TCP/IP | HTTP(S) | Web 学习书籍分享
◎Github地址:https://github.com/anzhihe/Free-Web-Books.git,此文章移到github维护
Free Web Books
This is my personal collection of free tcp/ip web http(s) books, feel free to share and read.
Google Drive:https://dri...
◎Github地址:https://github.com/anzhihe/Free-Web-Books.git,此文章移到github维护
This is my personal collection of free tcp/ip web http(s) books, feel free to share and read.
Google Drive:https://dri...
译者注:很久没有翻译文章了,最近在网络看到这篇介绍网络栈的文章非常详细,正好最近在看这方面的内容,索性翻译过来。因为很多文章比较长,而且很多内容比较专业,翻译过程中难免会有错误,如果读者发现错误,还望不吝指出。文章中 Linux 内核源码摘自哪个版本原文并没有表明,我也没有找到对应的版本,代码的缩进可能会有问题。
原文地址:https://www.cubrid.org/blog/understand...
Continue reading >>在网络分析中,读懂TCP序列号和确认号在的变化趋势,可以帮助我们学习TCP协议以及排查通讯故障,如通过查看序列号和确认号可以确定数据传输是否乱序。但我在查阅了当前很多资料后发现,它们大多只简单介绍了TCP通讯的过程,并没有对序列号和确认号进行详细介绍,结合实例的讲解就更没有了。近段时间由于工作的原因,需要对TCP的序列号和确认号进行深入学习,下面便是我学习后的一些知识点总结,希望对TCP序列号和确...
Continue reading >>◎目录
Ø 协议地图
Ø ARP/RARP报文格式
Ø VLAN帧格式
Ø IP报文格式
Ø TCP报文格式
Ø UDP报文格式
Ø DHCP报文格式
Ø DNS报文格式
传输控制协议(TCP)
面向连接、可靠传输、支持流控及窗口机制(HTTP、FTP等)
用户数据报协议(UDP)
无连接、尽力而为的传输、无流控及窗口机制(TFTP、DNS、DHCP等)
端口号
逻辑端口,可用范围为1-65535,用来区分主机服务,源端口随机分配(一般为系统中未使用的且大于1023),目标端口号使用知名端口(服务端应用服务的进程接口,如HTTP 80端口)。
TCP header
TCP半连接和全连接
Seq=x Len=y ACKnum=x+y,上图取len=1的情况,这样可以检测是否丢包。
TCP的功能:面向连接(三次握手+四次挥手)、可靠传输(序列号+确认号)、流控(滑动窗口)、多路复用(套接字Socket: ip+port)
TCP状态图(rfc793)
Continue reading >>