首页 > 其他分享 >TCP/IP 网络模型

TCP/IP 网络模型

时间:2022-11-26 22:22:06浏览次数:47  
标签:IP 模型 TCP 传输 传输层 数据包 报文

一、应用层

应用层是工作在操作系统中的用户态,传输层及以下则工作在内核态。

二、传输层

在传输层会有两个传输协议,分别是 TCP 和 UDP。

TCP 的全称叫传输控制协议(Transmission Control Protocol)。TCP 相比 UDP 多了很多特性,比如流量控制、超时重传、拥塞控制等,这些都是为了保证数据包能可靠地传输给对方。

UDP 相对来说就很简单,简单到只负责发送数据包,不保证数据包是否能抵达对方,但它实时性相对更好,传输效率也高。当然,UDP 也可以实现可靠传输,把 TCP 的特性在应用层上实现就可以。

应用需要传输的数据可能会非常大,如果直接传输就不好控制,因此当传输层的数据包大小超过 MSS(TCP 最大报文段长度) ,就要将数据包分块,这样即使中途有一个分块丢失或损坏了,只需要重新发送这一个分块,而不用重新发送整个数据包。在 TCP 协议中,我们把每个分块称为一个 TCP 段TCP Segment)。

当设备作为接收方时,传输层则要负责把数据包传给应用,但是一台设备上可能会有很多应用在接收或者传输数据,因此需要用一个编号将应用区分开来,这个编号就是端口

由于传输层的报文中会携带端口号,因此接收方可以识别出该报文是发送给哪个应用。

三、网络层

网络层(Internet Layer)实现,实际的传输功能。

网络层最常使用的是 IP 协议(Internet Protocol),IP 协议会将传输层的报文作为数据部分,再加上 IP 包头组装成 IP 报文,如果 IP 报文大小超过 MTU(以太网中一般为 1500 字节)就会再次进行分片,得到一个即将发送到网络的 IP 报文。

 

标签:IP,模型,TCP,传输,传输层,数据包,报文
From: https://www.cnblogs.com/imreW/p/16928489.html

相关文章

  • NOIP2022 游记
    本来不想写游记的,但还是想给自己OI六年生涯留一篇游记。pre得知好兄弟因某些原因来不了了,被迫退役。心情比较郁闷。on7:307:30就进场了,试机试了10分钟就不让试了,然后......
  • 『题解』Codeforces 1742C Stripes
    Problem在\(8\times8\)的网格上,轮流染上红色和蓝色。红色只能染一整行。蓝色只能染一整列。问最后用的是哪种颜色。Solution题目说明了至少会染一个条纹,所以我......
  • NOIP 2022 反思与总结
    游记更多的还是从水平上的总结吧,毕竟其他的发出来貌似也不大好。T1没什么好说的,自己傻逼多测不清空,考场根本没想到这点。T2确实很难,超出了一般T2的难度,但是再难其实......
  • [NOIP2022] 种花
    没进noip的场外菜鸡选手。Solution可以发现C和F的相似之处在于左侧都有一条竖线,可以枚举这一条竖线,设它的上顶点向右可以拓展\(a\)个格子,下顶点向右可以拓展\(b......
  • 【赛后总结】NOIP2022
    如果时间安排合理能否拿到更多的分。我不知道该说什么,想哭想大声喊寄想做一切……好像也没什么能做的,除了把t3的状压调出来。从t3,重新开始吧。时间安排8:27--8:45看......
  • rinetd tcp/udp 端口重定向服务
    rinetd支持tcp以及udp协议的端口重定向,功能还是比较有用的,比如进行一些流量转发,配置上也是比较方便的,同时支持一些简单的访问控制处理构建 gitcloneht......
  • iptables防火墙
    iptables命令-F清除链中所有规则-P为链设置一条默认策略或者目标-A为链增加一条规则说明-D从链中删除一条规则-L查看当前表中的链和规则一般上述命令均已sudo......
  • TypeScript之构造函数和this
     示例:classDog{name:string;age:number;//constructor被称为构造函数//构造函数会在对象创建时调用constructor(name:string,age:......
  • TypeScript之类
    TypeScript中的类的定义与使用示例//使用class关键字来定义一个类/**对象中主要包含了两个部分:*属性*方法**/classPerson{/**......
  • Multipass,本地轻量级Linux体验!
    Multipass介绍......