欢迎来到天天文库
浏览记录
ID:39505383
大小:59.00 KB
页数:10页
时间:2019-07-04
《简述TcpIP协议簇运作过程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、题目:简述Tcp/IP协议簇运作过程(包含ARPICMPIPTCPUDP)每个协议挑选1-2个代码情景,简析协议内容的代码实现。TCP/IP:TransmissionControlProtocol/InternetProtocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层
2、所提供的协议来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。IPIP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是否按顺序发送的或者有没有被破坏,IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址
3、)。高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IPsourcerouting,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的服务来说,使用了该选项的IP包好像是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非
4、法入侵。TCP:TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP是面向连接的所以只能用于端到端的通讯。TCP提供的是一种可靠的数据流服务,采用“带重传的肯定确认”技术来实现传输的可靠性。TCP还采用一种称为“滑动窗口”的方式进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏
5、的包可以被重传。TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。面向连接的服务(例如Telnet、FTP、rlogin、XWindows和SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。主要特点:(1)TCP/IP协议不依赖于任何特定的计算机硬件或操作系统,提供开放的协议标准,即使不考虑Internet,
6、TCP/IP协议也获得了广泛的支持。所以TCP/IP协议成为一种联合各种硬件和软件的实用系统。(2)TCP/IP协议并不依赖于特定的网络传输硬件,所以TCP/IP协议能够集成各种各样的网络。用户能够使用以太网(Ethernet)、令牌环网(TokenRingNetwork)、拨号线路(Dial-upline)、X.25网以及所有的网络传输硬件。(3)统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有惟一的地址(4)标准化的高层协议,可以提供多种可靠的用户服务。代码实现:#include#in
7、clude#defineDEFAULT_PORT5050#defineDATA_BUFFER1024voidmain(intargc,char*argv[]){WSADATAwsaData;SOCKETsClient;intiPort=DEFAULT_PORT;intiLen;charbuf[DATA_BUFFER];structsockaddr_inser;if(argc<2){printf("Usage:client[serverIPaddress]");return;}memset(buf,0,s
8、izeof(buf));if(WSAStartup(MAKEWORD(2,2),&wsaData)!=0){printf("FailedtoloadWinsock.");return;}ser.sin_family=AF_INET;ser.sin_port=htons(iPort);s
此文档下载收益归作者所有