TCP/IP协议族

OSI模型和网际协议族
描述网络中各协议层的一般方法是国际标准化组织(ISO)的计算机通信开放系统互联(open systems interconnection,OSI)模型。OSI和网际协议族的近似映射如下图:
TCP/IP协议族
文章图片

TCP/IP协议族包括TCP、UDP、ICMP、IGMP、IPv4、IPv6、ICMPv6、ARP、RARP、BPF、DLPI等协议,协议族概貌如下图:
TCP/IP协议族
文章图片

TCP和UDP的比较

TCP
UDP
TCP提供可靠的字节流连接
UDP提供不可靠的数据报传送
TCP提供确认、序列号、RTT估算、超时及重传等机制
UDP不提供确认、序列号、RTT估算、超时及重传等机制
TCP提供流量控制
UDP不提供流量控制
TCP是全双工的连接
UDP可以是全双工的
TCP连接的建立和终止
服务端会使用socket、bind和listen函数完成接收外来连接的准备,称为被动打开。
客户端通过调用connect函数主动打开。进行TCP三次握手过程,如下图:
TCP/IP协议族
文章图片

TCP需要三个分节(三次握手)建立连接,终止一个连接则需要四个分节(四次挥手)。
TCP/IP协议族
文章图片

TCP状态转换图、
TCP/IP协议族
文章图片

TCP连接中的分组交换
TCP/IP协议族
文章图片

缓存区大小相关
MTU:最大传输单元,由硬件规定,以太网的最大传输单元大小是1500字节
TCP头部大小:20字节UDP头部大小:8字节
IPv4头部大小:20字节IPv6头部大小:40字节
【TCP/IP协议族】MMS:用于告知对方在每个分节中能发送的最大的TCP的数据量,MMS经常设置成MTU减去IP和TCP头部的固定长度,MMS值为16位,最大值为65535,这很适合TPv4,因为IPv4的最大TCP数据量为65495。IPv6较特殊,当前不必关心。在以太网中,使用IPv4的MMS为1460,使用IPv6的为1440。

    推荐阅读