66.ip

网线拔掉之后,客户端收不到服务器发来的消息,服务器多次发送之后就关了,如果,服务器多次发送期间客户端把网线插上,此时需要重新建立连接,服务器发过来之后,客户端就向服务器发送reset标志位,让对端进行链接重置,对端也能正常关掉。

拔了网线 若服务器不给客户端发消息呢,会发送不携带数据的保活的报文 ,若不回复就关掉,

建立连接 四次挥手 通信 长时间不通信,有强容错。

服务端拔网线也一样。

简单允许丢包用udp ,其余tcp,

pcb内有文件描述符表的指针,

count是引用计数,静态文件描述符表是这个数组array,可以通过 第二3个指针动态扩展,网络服务器可以扩展成65535大小,next fd就是下一次分配的文件描述符,

看一下文件file

内有path,path内有挂载点和dentry

dentry内包含inode

这是文件所对应的操作表,fcount是引用计数,flag是打开文件的选项,mode是权限,pos是读写位置,fmapping指向内核缓冲区,void private data可以指向其他对象socket,

若进程读取该套接字没有数据,就可以把指定进程pcb放入该套接字等待队列里,所以阻塞,当有数据,硬件会触发中断,识别网卡中断,执行中断向量表,可以检测系统当中打开的套接字,state变化了,再放入run队列,就可以read读。

sk指针的sock内有

accept不参与三次握手,底层可以直接建立链接,那么怎么维护的,先描述在组织,链接就是file socket sock

这个sock内还有

skbuff内就是报文,receive和write就是接收发送缓冲区,链式结构通过算法抓化成字节流读取,

udp就不用write,就是一个节点就是一个节点往上拿。收一个数据就是一个skbuff,skbuff有四组指针,指向数据块,按照协议报头解析拷贝上去,就读到了有边界的数据。这是udp.

udp 还是tcp,我要知道原ip port 目的ip port ,还包含了sock对象

connection sock

包含请求队列,三次握手连接要维护,我们正在进行连接,需要accept队列就是这个,三次握手成功,链接结构体放在这里。链接结构体就是sock,bind bucket就是哈希表,listen套接字(进程pcb)和特定端口号(键值)绑定。

第一个成员是inet sock,

这个第一个是成员是connection,这个tcp socket包含了inet connectoion内部包含了inet socket 内部包含了sock,sock就是我们指针指向的,三次握手建立好一个链接,底层是创建tcpsock就行,所有其余的都有了,struct sock就直接指向第一个成员就行,强转类型就可以访问。

创建连接成功会建立一个tcpsock,accept时候上层返回一个套接字对象,创建file,sk指向下一个tcpsocket,file填入文件描述符给上层返回,所以就有了两个tcp套接字。

udp没有connection,只有 三层

sk可以指向第一个成员,因为第一个成员都是相等的,

为什么ip有首部长度,应用层数据后面还有管理空间,所以要有总长度。这样可以解决解包问题。

4位版本固定是说明是ipv4,

根据服务类型选择路径

软件问题或者硬件问题,报文可能环形转发,由于没有到达目标主机,所以报文可能一直进行转发,所以物理层可能存在集线器,做信号放大,保证传播更远。 那么这个报文就是不死不灭的。

这样就会积攒大量报文,全球网路越来越慢,所以设置ttl ,转一定次数就丢弃,

数据可能出错,通过16位校验和可以保证数据正确。

协议规定ip地址32位,因为要发到网络里,所以必须转成4字节大端。

路由器默认主机号是1

课堂板书/20250518_IP.png · whb-helloworld/113 - 码云 - 开源中国

相关推荐
tudoSearcher1 小时前
手机、平板、电脑同时控制Claude Code / Codex ?:Paseo实战指南
网络·开源·开源软件·个人开发·ai编程
加农炮手Jinx1 小时前
Flutter for OpenHarmony:pub_updater 命令行工具自动更新专家(DevOps 运维必备) 深度解析与鸿蒙适配指南
android·运维·网络·flutter·华为·harmonyos·devops
华纳云IDC服务商1 小时前
高防CDN和高防IP一起用,延迟会增加多少?
网络·网络协议·tcp/ip
sxd20012 小时前
Debian #1135514 bug引发的思考
网络·debian·bug
VOOHU-沃虎2 小时前
沃虎——一台旧设备的“慢性病”:网络变压器回波损耗劣化引发的间歇性断流
网络·信息与通信
叶帆2 小时前
【YFIOs】用C#开发硬件之WiFi网络
开发语言·网络·c#
yuegu7772 小时前
HarmonyOS应用<节气通>开发第25篇:HTTP请求封装
网络协议·http·harmonyos
梦想的旅途22 小时前
企业微信外部群主动调用:RPA 接口与官方 API 的技术边界
网络·mysql·自动化·企业微信·rpa
zbtlink2 小时前
路由器漏洞为什么越来越严重
网络·智能路由器