能完成文件传输服务的tcp协议是使用TCP协议实现文件传输。程序会分为服务器端和客户端,首先运行服务器端,监听来自客户端的连接,客户端运行后会通过程序内的服务器端IP地址,向服务器发送连接请求。双方建立请求之后,客户端将所需文件的文件名和绝对路径传输给服务器,如果服务器找到此文件,则将此文件传输给客户端,然后断开连接。以下非原创,仅供参考!\x0d\x0a下面以采用TCP/IP协议传送文件为例,说明TCP/IP的工作原理,其中应用层传输文件采用文件传输协议\x0d\x0a(FTP)。\x0d\x0aTCP/IP协议的工作流程如下:\x0d\x0a1.在源主机上,应用层将一串应用数据流传送给传输层。\x0d\x0a2.传输层将应用层的数据流截成分组,并加上TCP
报头形成TCP段,送交网络层。\x0d\x0a3.在网络层给TCP段加上包括源、
目的主机IP地址的IP报头,生成一个IP
数据包,并将IP数据包送交链路\x0d\x0a层。\x0d\x0a4.链路层在其MAC帧的数据部分装上IP数据包,再加上源、目的主机的MAC地址和帧头,并根据其目的MAC\x0d\x0a地址,将MAC帧发往目的主机或IP路由器。\x0d\x0a5.在目的主机,链路层将MAC帧的帧头去掉,并将IP数据包送交网络层。\x0d\x0a6.网络层检查IP报头,如果报头中校验和与计算结果不一致,则丢弃该IP数据包;若校验和与计算结果\x0d\x0a一致,则去掉IP报头,将TCP段送交传输层。\x0d\x0a7.传输层检查顺序号,判断是否是正确的TCP分组,然后检查TCP报头数据。若正确,则向源主机发确认\x0d\x0a信息;若不正确或丢包,则向源主机要求重发信息。\x0d\x0a8.在目的主机,传输层去掉TCP报头,将排好顺序的分组组成应用数据流送给应用程序。这样目的主机接\x0d\x0a收到的来自源主机的字节流,就像是直接接收来自源主机的字节流一样。1、当你把要传送的数据传递给TCP后,TCP把这些信息分成很多个数据包(这种数据包称为TCP分组),每一个分组都包含有一个序号。接着TCP分组被传递给IP层,IP层把这个TCP分组放在一个IP数据包的数据部分。然后,这个IP数据包被传到目的主机。目的主机
上的IP层,把IP数据包的数据部分(即TCP分组)传递给TCP层。TCP接收到分组后,检查数据包的正确性,如果不正确,通知源计算机重新送该IP包。利用分组的序号来将数据按照原来的顺序排列,然后送给应用层。换句话说,IP的工作是把原始数据(数据包)从一地传送到另一地;TCP的工作是管理这种流动并确保其数据是正确的。在IP层,信息不是一个恒定的流,而是一个个小的数据包,这种数据包称为IP数据报。所有要发送的信息都必须被拆成IP数据包,才能在IP网上传送。IP数据报中最主要的内容有:源计算机的地址信息、目的计算机的地址信息、要传输的数据。当发送一个数据包时,计算机首先根据目的地址决定将其发送给谁,如果目的计算机与源计算机在同一个物理网络中,则直接将这个数据报发送给它。如果目的计算机与源计算机不在同一个物理网络中,则发送给路由器,路由器这个特殊的计算机连在了两个网络之中,因此可以同时与两个网络中的计算机通信。路由器在收到数据包后,根据目的地址决定是直接发给目的计算机(如果在同一个物理网络中),还是转发给另一台计算机(如果不在同一个物理网络中)。
评论列表(0条)