1.文件传输协议客户端向文件传输协议服务器发送数据,并详细说明其工作过程。
下图显示了两台机器之间的连接:
详细回答如下
1.1.假设初始设置如下:
客户端文件传输协议端口号为:32768
服务器端的FTP端口号为:21
1.2.不同网段的两台计算机之间通过TCP/IP协议进行通信的过程如下:
协议是横向的,服务是纵向的。
物理层是指电信号的传输方式和比特流的透明传输。
链路层在两个相邻节点之间的线路上以帧为单位传输数据,没有错误。
网络层负责为分组交换网络上的不同主机提供通信,数据传输的单位是分组或数据包。
传输层负责主机中两个进程之间的通信,数据传输的单位是报文段。
网络层负责点对点传输(“点”这里指主机或路由器),传输层负责端到端传输(“端”这里指源主机和目的主机)。
1.3.数据包的打包过程
不同的协议层对数据包有不同的称呼,传输层称之为段,网络层称之为数据报,链路层称之为帧。数据被封装成帧并发送到传输介质。到达目的主机后,从各层协议中剥离对应的报头,最后将应用层数据交给应用程序处理。两台计算机位于不同的网段,因此在从一台计算机传输到另一台计算机的过程中,数据将通过一个或多个路由器。
1.4、工作流程
TCP使用大小可变的滑动窗口进行流量控制。窗口大小的单位是字节。
TCP段头的窗口字段中写入的值是当前为对方设置的发送窗口值的上限。
连接建立时,发送窗口由双方商定。但在通信过程中,接收方可以根据自己的资源(可以增减),随时动态调整对方发送窗口的上限。
上图(a)显示发送端需要发送900字节的数据,分为9个100字节的报文段,发送窗口确定为500字节。只要发送方收到对方的确认,发送窗口就可以向前移动。发送TCP需要维护一个指针。每次发送一个数据段,指针都会向前移动一个数据段的距离。
上图(b)显示发送方发送了400字节的数据,但只收到了前200字节
根据确认,窗口大小同时保持不变。现在发送方还能发送300字节。
上图(c)显示发送方已经收到对方对前400字节数据的确认,但对方通知发送方,窗口必须缩减到400字节。目前,发送方最多可以发送400字节的数据。
双方为可变窗口大小的流量控制确定的窗口值为400,如下图所示:
(2)拥塞控制
为了更好地控制拥塞,互联网标准建议使用以下三种技术:慢启动、乘法下降和拥塞避免。
“避免拥堵”并不意味着可以完全避免拥堵。使用上述措施仍然无法完全避免网络拥塞。“拥塞避免”是指拥塞窗口在拥塞避免阶段被控制成线性增长,使得网络不太容易拥塞。
3.5.端口号的标识
(1)港口的概念:
端口是TSAP的传输层服务接入点。
端口的作用是让应用层的各种应用进程通过端口把它们的数据向下传递到传输层,让传输层知道它的报文段中的数据应该通过端口向上传递到应用层的相应进程。
从这个意义上说,端口是用来标记应用层的进程的。
(2)端口在进程间通信中的作用
(3)端口号
端口标有16位端口号。
端口号只有本地含义,即端口号仅用于标记这台计算机应用层中的每个进程。互联网中不同的计算机之间没有相同端口号的连接。
有两种类型的端口号:
一种是众所周知的端口,其值一般为0 ~ 1023。当新应用程序出现时,必须为其分配一个众所周知的端口。
另一个是通用端口,用于随时分配给请求通信的客户端进程。
端口的功能可由下图表示:
(4)插座
TCP使用“连接”(而不仅仅是“端口”)作为最基本的抽象,TCP连接的端点称为套接字,或者套接字和windows套接字。套接字包括IP地址(32位)和端口号(16位),总共48位。套接字、端口和ip地址之间的关系是:
1.《数据传输器 数据传输过程详解》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《数据传输器 数据传输过程详解》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/guoji/1242287.html