文档介绍:第5章传输层协议UDP和TCP
端到端通信和端口号
用户数据报协议UDP
传输控制协议TCP
TCP与UDP的比较
习题
应掌握的内容:
1、TCP协议格式的主要字段及其含义和功能
2、连接的建立与关闭的过程
3、滑动窗口协议是如何进行流量控制的
4、TCP超时重发的原理
端到端通信和端口号
端到端通信
在互联网中,任何两台通信的主机之间,从源端到目标端的信道都是由一段一段的点到点通信线路组成的(一个局域网中两台主机通信时只有一段点到点的线路)。如图5-1所示。
图5-1 传输层端到端通信
这种直接相连的节点之间对等实体(源节点的IP层和目标节点的IP层)的通信叫点到点通信。
端到端通信是建立在点到点通信基础之上的,它是比网络互联层通信更高一级的通信方式,完成应用程序(进程)之间的通信。端到端的通信是由传输层来实现的。
传输层端口的概念
为了识别传输层之上不同的网络通信程序(进程),传输层引入了端口的概念。在一台主机上,要进行网络通信的进程首先要向系统提出动态申请,由系统(操作系统内核)返回一个本地惟一的端口号,进程再通过系统调用把自己和这个特定的端口联系在一起,这个过程叫绑定(Binding)。这样,每个要通信的进程都与一个端口号对应,传输层就可以使用其报文头中的端口号,把收到的数据送到不同的应用程序,如图5-2所示。
图5-2 传输层端到端通信
在TCP/IP协议中,传输层使用的端口号用一个16位的二进制数表示。因此,在传输层如果使用TCP协议进行进程通信,则可用的端口号共有216个。由于UDP也是传输层一个独立于TCP的协议,因此使用UDP协议时也有216个不同的端口。
客户端在提出请求时一定要先知道对方的端口号,为此,TCP/IP协议在进行设计时就把服务器上守候进程的端口号进行了静态分配。
一些常用服务的TCP和UDP的众所周知端口号见表5-1和表5-2。
表5-1 常用的众所周知的TCP端口号
表5-2 常用的众所周知的UDP端口号