大家好,我是IT修真院成都分院第7期的JAVA学员龚剑飞,一枚正直纯洁善良的java程序员。
今天给大家分享一下,修真院官网Java任务2,深度思考中的知识点————什么是tcp/ip协议?TCP的三次握手指的是什么,为什么一定要三次握手,而不是四次或者是两次?
一、背景介绍
TCP/IP是什么?
TCP/IP不是一个协议,而是一个协议族的统称。里面包括了IP协议,IMCP协议,TCP协议等等。同时是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。
TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。
二、知识剖析
TCP/IP协议的四层结构:
第一层:链路层
包括操作系统中的设备驱动程序、计算机中对应的网络接口卡
第二层:网络层
网络互连层是整个TCP/IP协议栈的核心。它的功能是把分组发往目标网络或主机。同时,为了尽快地发送分组,可能需要沿不同的路径同时进行分组传递。因此,分组到达的顺序和发送的顺序可能不同,这就需要上层必须对分组进行排序。
网络互连层定义了分组格式和协议,即IP协议(Internet Protocol)。
特别注意:此时的IP包是不安全的,IP协议不会管送没送到
第三层:传输层
在TCP/IP模型中,传输层的功能是使源端主机和目标端主机上的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议。即:传输控制协议TCP和用户数据报协议UDP.
TCP协议是一个面向连接的、可靠的协议。它将一台主机发出的字节流无差错地发往互联网上的其他主机。在发送端,
它负责把上层传送下来的字节流分成报文段并传递给下层。在接收端,它负责把收到的报文进行重组后递交给上层。
TCP协议还要处理端到端的流量控制,以避免缓慢接收的接收方没有足够的缓冲区接收发送方发送的大量数据.
UDP协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。
第四层:应用层
TCP/IP模型将OSI参考模型中的会话层和表示层的功能合并到应用层实现。这一层主要的作用有DNS域名解析
三、常见问题
那么TCP为什么需要三次握手呢?
两次和四次为什么不可以呢?
四、解决方案
三次握手是在安全可靠的基础上,握手次数最少的方案
两次握手并不能保证可靠性
四次握手又浪费了效率,当然,有的需要更高安全性的地方,是可以有N次握手协议的,但那是特殊情况
今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~
技能树.IT修真院“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。
这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~我的邀请码:13869506,或者你可以直接点击此链接:http://www.jnshu.com/login/1/13869506
作者:gjf
PPT地址:PPT链接