- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TCPIP传输层,你懂多少
你所不知道的传输层
PS.老规矩,列出可能遇到的20个问题,如果您是都能回答的高手,请您绕道,我是小菜,只做自己的学习笔记。
?
1.?传输层的主要功能是什么?2.?传输层如何区分不同应用程序的数据流?3.?传输层有哪些协议?4.?什么是UDP协议?5.?为什么有了UDP,还需要TCP?6.?什么是TCP协议?7.?怎么理解协议和程序?8.?TCP是否真的有链接?9.?链接是如何建立的(逻辑上)?10.?所谓的建立TCP链接开销很大,具体是指什么?11.?三次握手的目的是什么?12.?TCP如何提供可靠性?13.?什么是预期确认?什么是肯定确认与重新传输?哪些情况会重传?14.?TCP中,序列号和应答号有哪些作用?15.?TCP链接中,网络失败,是怎么判断的?16.?为什么需要窗口技术?17.?如何实现流量控制?18.?UDP的开销很小,具体是指什么?19.?UDP数据包、TCP数据包大小如何确认?20.?UDP适合哪些环境?TCP适合哪些环境?
?
?
一。传输层的主要功能是什么?
?分割并重新组装上层提供的数据流,为数据流提供端到端的传输服务。
?
二。传输层如何区分不同应用程序的数据流?
?
因为,对应传输层而言,它只需要知道目标主机上的哪个服务程序来响应这个程序,而不需要知道这个服务程序是干什么的。因此,我们只需要能够抽象的表示出来这些应用程序和服务程序即可。我们使用端口号来抽象标识每个网络程序。
?
传输层的TCP和UDP可以接收来自多个应用程序的数据流,用端口号标识他们,然后把他们送给Internet层处理;
同时TCP和UDP接收来自Internet层的数据包,用端口号区分他们,然后交给不同的应用程序。?因此:在同一IP地址(同一个目标主机)上不同的端口号是两个不同的链接。IP地址和端口号用来唯一的确定网络上数据的目的地。
?
三。传输层有哪些协议?
传输层的两大协议:TCP(传输控制协议)UDP(用户数据包协议)TCP是一个可靠的面向链接的协议,UDP是不可靠的或者说无连接的协议。可以用打电话和发短信来说明这种关系:
UDP就好似发短信,只管发出去,至于对方是不是空号??网络不可到达)能不能收到(丢包)等并不关心。
TCP好像打电话,双方要通话,首先,要确定对方不是开机(网络可以到达),然后要确定是不是没有信号(),然后还需要对方接听(通信链接)。
?
四。什么是UDP协议?
UDP数据包结构如下图所示
?
源端口(16)目标端口(16)报文长度(16)校验和(16)数据(可变)UDP为应用程序提供的是一种不可靠的、无连接的分组交付,因此,UDP报文可能会出现丢失、乱序、重复、延时等问题。
因为它不提供可靠性,它的开销很小。(开销很小具体指什么?下文揭秘)?
五。为什么有了UDP,还需要TCP?
问题4中已经说到,UDP为应用程序提供的是一种无连接、不可靠的分组交付。当网络硬件失效或者负担太重时,数据包可能就会产生丢失、重复、延时、乱序的现象。这些都会导致我们的通信不正常。如果让应用程序来担负差错控制的工作,无疑将给程序员带来许多复杂的工作,于是,我们使用独立的通信协议来保证通信的可靠性是非常必要的。
?
六。什么是TCP协议?
?传输控制协议TCP是一个面向链接的、可靠的通信协议。
1.?在开始传输前,需要进行三次握手建立链接2.?可靠性:在传输过程中,通信双方的协议模块继续进行通信3.?通信结束后,通信双方都会使用改进的三次握手来关闭链接
TCP数据包结构如下图
?
源端口(16)目标端口(16)序号(32)应答号(32)头长度(4)保留(6)编码位(6)窗口(16)校验和(16)紧急(16)可选项(如果有,0或32)数据(可变)?
?
**七。怎么理解协议和程序?**
如同我们自定义的应用层协议一样:协议只是给出了一组规范,规定我们应该怎么样(按什么规则)保存数据。
在计算机间传输的永远都是二进制字节码(对于传输层,可以理解为传输的始终是下层的IP数据包),是计算机中的程序通过对这些字节码进行逻辑分析、判断,来控制程序完成差错控制等功能。至于解析这些字节码的程序,则可以有不同的实现,只要我们按照规则来解析,并作出相应的控制,我们大可以自己写个程序是实现相应功能。
?
知道了这些后,显然,我们也可以使用前面说的Jpcap,来自己实现一个基于Java的TCP或者UDP协议。可以参考Linux下的Tcp源码。
/net/ipv4/udp.c/net/ipv4/datagram.c?/net/ipv4/tcp_input.c?/net/ipv4//tcp_output.c?/ne
您可能关注的文档
最近下载
- 小升初语文阅读考点 专题五 写人记事类文章阅读指导 专练卷(含答案)人教统编版.doc VIP
- TCSAE-功能型无人车 自动驾驶功能场地试验方法及要求.pdf VIP
- 机械制图与CAD基础习题集第2版包玉梅习题答案.pdf
- FZ_T07037-2024《纺织企业水重复利用率计算方法》.pdf VIP
- 《企业财务会计习题与实训(第5版)》课后参考答案1-4章程运木.doc
- 人才素质盘点方案.pptx VIP
- 2023天健校招笔试题型.pdf VIP
- 必修下教材文言文逐篇过关挖空训练(二)(解析版)-2026年高考语文一轮复习之古诗文(全国通用).pdf VIP
- 必修下教材文言文逐篇过关挖空训练(一)(解析版)-2026年高考语文一轮复习之古诗文(全国通用).pdf VIP
- 天健笔试押题校招.pdf VIP
文档评论(0)