![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络
文章平均质量分 79
夏天的呆子
这个作者很懒,什么都没留下…
展开
-
TCP/IP四层模型中协议的格式
1、以太网帧格式 2.2、ARP数据报格式 3、IPV4数据报格式如下: IP数据包的首部长度和数据长度都是可变的,但总是4的整数倍。 4位版本:IPV4的版本号是4。 4位首部长度:它里面的数值是以4字节为单位的,最小值是5,最大是15。即,首部长度最小是20字节(不带任何选项),最大是60字节。 8位服务类型(TOS):这个字段有3个位来表示IP数据包的优先级(原创 2017-07-11 09:33:42 · 231 阅读 · 0 评论 -
epoll
#include #include #include #include #include #include #include #include #include #include int start_up(char* ip, short port) { int listen_sock = s原创 2017-08-06 11:38:27 · 321 阅读 · 0 评论 -
I/O多路复用之select&poll
系统提供select函数用来实现I/O多路复用输入/输出模型。select系统调用是用来让我们的程序监视多个文件描述状态变化的。程序会停在select这里等待,直到被监视的文件描述符有一个或多个发生状态变化。通常I/O操作有两个步骤,一个是等,另一个是数据搬迁。select主要是在等的这个状态阻塞着直到事件发生。 头文件:#include<sys/select.h>#include<sys/ty原创 2017-08-06 10:19:13 · 260 阅读 · 0 评论 -
线程池
一、什么是线程池 线程池是服务器预先创建的一组线程,这些线程运行着相同的代码,并具有相同的属性。当有新的任务到来的时候,主线程通过某种方式选择线程池中的某一个线程来为之服务,服务完之后又放回线程池中。二、为什么要有线程池 相比于动态创建线程来说,线程池可以提高速度。因为线程的创建和销毁是需要时间的,如果我们预先创建好,用完之后再回收的话,则会节省不少时间。一般线程池中线程的数量和CPU原创 2017-08-06 11:31:37 · 170 阅读 · 0 评论 -
TCP连接和释放(三次握手和四次挥手)
一.TCP链接过程: 1.TCP链接状态图: 2.TCP三次握手过程: (1)A的TCP客户进程向B发出连接请求报文段。这是首部的同步位SYN=1,同时选择一个初始序号seq=x (2)B收到连接请求报文段后,如果同意建立连接,向A发送确认。报文段中把ACK(确认)和SYN(同步)置1,确认号是ack=x+1,自己的序号是seq=y (3)TCP客户进程收到B的确认后,向原创 2017-07-19 12:18:18 · 429 阅读 · 0 评论 -
URG和PSH
URG(紧急位):当URG=1的时候,紧急指针有效。紧急指针是一个正的偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号。TCP的紧急方式是从发送端向另一发送发送紧急数据的方式。数据从第一个字节到紧急指针所指字节就是紧急数据。数据段中的紧急数据不进入缓冲区就直接交给上层进程,而余下数据则要进入接收缓冲区。PSH(急迫位):PSH=1时,客户端发送给服务器的报文段立即被服务器TCP交付给应用进原创 2017-07-14 15:35:18 · 201 阅读 · 0 评论 -
调研TCP定时器
TCP使用四种定时器(Timer,也称为“计时器”): 重传计时器:Retransmission Timer 坚持计时器:Persistent Timer 保活计时器:Keeplive Timer 时间等待计时器:Time_Wait Timer。(1)重传计时器:重传定时器:为了控制丢失的报文段或丢弃的报文段,也就是对报文段确认的等待时间。当TCP发送报文段时,就创建这个特定报文段的重传计时原创 2017-07-12 14:12:07 · 147 阅读 · 0 评论 -
端口号分类调研
1、什么是端口号? 在一台主机上运行了多个服务,主机为了区分这些服务,所以给每个服务都分配一个端口号,端口号唯一的标识这台主机上的某个服务。 IP地址唯一标识网络上的一台主机,服务器用通过端口号来区分不同的网络服务。所以IP地址+端口号就表示网络中唯一的一个服务。 客户端通常对它所使用的端口号并不关心,只要保证该端口在本主机上是唯一的就可以了。所以客户端端口号又叫做临时端口号,原创 2017-07-11 10:32:08 · 283 阅读 · 0 评论 -
NAT技术与代理服务器调研
一.网络地址转换(NAT): 所谓NAT技术就是网络地址转换。 那么它用在什么地方呢? 在专用网内部的一些主机本来已经分配到了本地IP地址,但是现在又想和因特网上的主机通信。那么应当采用什么措施呢? 最简单的办法就是设法再申请一些全球IP地址,但这在很多情况下是行不同的,因为全球的IPv4的地址已经所剩不多了,目前使用最多的方法就是采用网络地址转换。但是这种方法需要在专用网连接原创 2017-07-11 10:25:08 · 261 阅读 · 0 评论 -
CRC校验
CRC校验是什么? 如何进行校验? 具体的例子? CRC校验 为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。 目前在数据链路层广泛使用了循环冗余检验CRC(Cyclic Redundancy Check)。CRC校验原理: 先在要发送的帧后面附加一个数(这个数就是用来校验的校验码FCS,这个校验码是二进制序列的),生成一个新帧发送给接收端。原创 2017-07-11 09:50:43 · 419 阅读 · 0 评论 -
长连接和短连接
什么是长连接? 其实长连接是相对于通常的短连接而说的,也就是长时间保持客户端与服务端的连接状态。 通常的短连接操作步骤是: 连接-》数据传输-》关闭连接; 而长连接通常就是: 连接-》数据传输-》保持连接-》数据传输-》保持连接-》…………-》关闭连接; 这就要求长连接在没有数据通信时,定时发送数据包,以维持连接状态,短连接在没有数据传输时直接关闭就行了 什么时候用长连接,短连接?原创 2017-08-06 18:52:02 · 205 阅读 · 0 评论