-
这里尝试着总结一下TCP/IP模型和OSI模型的区别及相同点
相同点:
OSI模型和TCP/IP模型都采用了层次机构设计,各层之间分工明确,高内聚低耦合,即便出现了问题找到出问题的地方修改即可,其他层不受影响。
都可以面向连接可靠的通信服务,同时有无连接高效的传输机制。
不同点:
OSI模型是在众多协议开发前就已经设计出来了,所以它有一定的通用性。而TCP/IP模型是开发出协议后,才设计的TCP/IP模型,所以有的协议并不适合于TCP/IP模型
OSI模型只是理论上做参考,而TCP/IP模型已经有成熟的产品,已经称为国际标准,进入千家万户了
查看全部 -
接收端处理数据的流程
数据在链路层中,会取出帧头,判断目的MAC地址和我网卡的MAC地址是不是一致,如果一致则往网络层传递,反之丢弃数据
数据到达网络层后,取出IP头,判断IP地址是不是一致,如果一致,把数据往上传,同时去掉IP头,反之丢弃。
数据到达传输层,取出TCP头,看下端口号,应该将数据传递给哪个服务。
数据到达应用层,应用层采用的是那种协议,比如应用层使用的是HTTP协议,会去掉HTTP头部信息,最后交给浏览器渲染HTML
查看全部 -
TCP/IP协议,上层往下层层层传递,每层用每层的协议封装数据,最有由链路层把数据发送出去。
查看全部 -
应用层
是TCP/IP协议模型的最高层,主要是给用户提供各种服务,协议就非常的多了,比如有FTP、HTTP、DNS、SMTP、Telnet
查看全部 -
为什么TCP建立连接是三次?
这是因为TCP连接是可靠的连接,在传输数据前需要确认通信双方可以正常工作,网络通常,而三次握手是最少的,确定通信双方都有数据收发的能力。
查看全部 -
比如在需要保证可靠性的场景中,就需要采用TCP协议进行数据传输,比如网页、邮件等等。而有些应用采用的是UDP协议,需要高效率,可靠性不要那么在一,比如微信、微博等等
查看全部 -
UDP协议不会在发送数据前建立连接,而是将数据直接发送给对方,不管对方有没有收到,所以可靠性上就缺失了。
不过好处就是没有建立连接以及需要回复确认,效率上就高出不上,现在有些应用为了高效率采用UDP传输协议
查看全部 -
为什么说TCP是面向连接的协议呢?
这是因为在传输数据之前,会通过三次握手建立连接,连接建立之后,才会开始传输数据。
同时还说TCP是可靠的?
比如数据传递给主机B,主机B没有发送一个确认包给主机A,那么主机A会重发数据包给主机B,直到主机B回复了确认包主机A。
并且数据包的发送是有顺序的,比如在发送第三个数据包时,主机A还没有收到主机B发回的第一个数据包的确认包,主机A觉得发送的第一个数据包应该丢失了,决定重发数据包,将之前发送的数据包丢弃,重发第一个数据包,这就是可靠性
查看全部 -
TCP协议的三次握手
三次握手的目的在于确定我们的数据传输是可靠的,在数据传输前通过三次握手,知道双方都有接收发送数据的能力。
第一次握手,主机A向主机B发送一个请求连接的数据包,包中含有SYN协议,比如序列号等等,主机B收到来自主机A的数据包
第二次握手,主机B收到主机A的数据包后,需要发送一个回复包,告诉主机A你刚刚发送的请求连接包我收到了,我也希望和你建立连接,这个回复包中含有SYN、ACK等信息,比如序列号、确认号等等
第三次握手,主机A收到主机B发送的确认包后,需要回复主机B,告诉主机B我收到你的回复包了,可以建立连接,接下来我就开始传输数据了。
通过这三次握手,主机A和主机B就建立了连接,明确了通讯双方都在,且网络通常。一旦这三次握手其中有一个握手不成功,比如第二次握手,也就是说服务器B没有发送回复包给主机A,那么这个TCP连接就是失败的
查看全部 -
传输层
TCP/IP协议模型中的传输层,主要为应用层提供端到端的通信, 保证数据包的顺序传输以及数据的完整性。
该层最重要的两个协议,传输控制协议TCP,用户数据报协议UDP
查看全部 -
网际互连层
主要是解决主机到主机的通信问题,该层主要的三个协议,网际协议IP,互联网组管理协议(IGMP)和互联网控制报文协议(ICMP)
查看全部 -
网络接口层在TCP/IP协议4层模型中的最下层,和我们的物理层、数据链路层相对应。
主要的工作是监视数据在网络和主机之间进行传输,比如地址解析协议(ARP)就是在网络接口层工作
查看全部 -
局域网内如何发送数据呢,比如我这台电脑发送数据给另外一台电脑,数据发到网线上后,会把请求发到交换机上,交换机只能识别MAC地址,不识别IP地址。
交换机的工作原理。
交换机启动后,指示灯会不停的闪烁,在闪烁的时间里主要是记录接到交换机接口上的网线,网线连接的对方设备的MAC地址,把这个MAC地址记录在交换机里。
下次在局域网传输数据时,通过ARP协议拿到MAC地址,然后在交换机中记录着MAC地址对应交换机上的那个接口,通过那个接口把数据传输出去。
查看全部 -
ARP协议的工作原理,就是把IP地址翻译成MAC物理地址。
为什么要把IP地址和MAC地址映射起来呢? 这是因为IP地址主要是在跨网段,或者说在公网中数据传输时确定目标服务器所在的位置。
如果在局域网,或者说在同一个网端中传输数据,用到的就是MAC地址,而不是IP地址。
查看全部 -
TCP/IP协议中的网络接口层相当于OSI模型中的数据链路层、物理层,负责数据在局域网中传输,以及定义物理设备的接口,电气特性,以及比特流的传输
查看全部
举报