网络通讯协议分为4层:数据链路层,网络层,传输层,应用层。
一:应用层
文件传输(FTP-File Transfer Protocol-文件传输协议):
FTP的传输有两种方式:ASCII传输模式和二进制数据传输模式。 在TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。
客户端首先和FTP服务器的TCP 21端口建立连接,然后成功连接之后,通过20端口发送数据的方式,称之为主动工作方式;
客户端首先和FTP服务器的TCP 21端口建立连接,服务器随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这种方式称之为被动工作方式。
被动工作方式时,客户端无法穿过防火墙打开FTP服务器的高端端口,多数情况下导致通讯不成功!!!
远程登录(Telnet),用户使用Telnet命令,使自己的计算机暂时成为远程主机的一个仿真终端的过程。仿真终端负责把用户输入的每个字符传递给主机,再将主机输出的每个信息显示在自己的计算机上。传输过程中,数据以NVT(Net Virtual Terminal)格式传送到远程主机。
网络管理(SNMP简单网络管理协议),该协议提供了监控网络设备的方法,以及配置管理、统计信息收集、性能管理及安全管理等。
二:传输层
TCP传输和UDP传输:
TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。在一次正常的TCP通讯过程中,会有连接前的三次握手,和关断连接的四次握手。
UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去。
TCP传输更加可靠,UDP传输更加快速,基本上工业场合TCP应用居多,UDP传输(比如 QQ离线传输文件)。
三:网络层
Internet协议(IP)
Internet协议是一个协议簇的总称,其本身并不是任何协议。一般有文件传输协议、电子邮件传输协议、超文本传输协议、通信协议等。
Internet控制信息协议(ICMP)
使用的用于检查网络通不通的ping命令,实际上就是ICMP协议工作的过程。还有其他的网络命令,如跟踪路由的Tracert命令也是基于ICMP协议的。
Internet组管理协议(IGMP-Internet Group Management Protocol)
主机与本地路由器之间使用Internet组管理协议,来进行组播组成员信息的交互,周期性地查询局域网内的组播组成员是否处于活动状态,实现所连网段组成员关系的收集 与维护。
ps:http://www.cnblogs.com/jztan/p/6034373.html
四:数据链路层
地址解析协议(ARP) :主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理 地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
反向地址解析协议(RARP) :网络管理员在局域网网关路由器里创建一个表以映射物理地址(MAC)和与其对应的 IP 地址。
Socket为网络访问提供了一套 套接字,作用于上层软件的开发, 调用相关的接口函数,实现Client和Server之间通讯。
原文:http://www.cnblogs.com/Blog-c/p/6502820.html