码迷,mamicode.com
首页 > 其他好文 > 详细

传输控制块

时间:2019-10-27 22:43:39      阅读:78      评论:0      收藏:0      [点我收藏+]

标签:class   分层   col   组播   窗口   bsp   request   部分   nec   

传输控制块是一个分层的填充结构,每一个层次都增加一些字段,来表示一个通用的控制,它们都是结构中的第一个结构,可以直接从头部直接转换成对应的控制块;如:tcp控制块的tcp_sock的使用slab分配,其大小为整个tcp_sock结构的大小,在下层用不到上层tcp相关属性的时候,只取其中的某个部分即可,如 (struct inet_sock *)sk 即可取得inet_sock ipv4传输控制块;

 1  struct tcp_sock { //tcp传输控制块
 2     struct inet_connection_sock { //面向连接的传输控制块
 3         struct inet_sock { //ipv4传输控制块
 4             struct sock { //协议无关的传输控制块
 5                 struct sock_common { //传输控制块公共部分
 6                     //struct sock, struct request_sock, struct inet_timewait_sock的公共部分
 7                 }
 8                 
 9                 //增加了其他非sock_common的公共信息
10             }
11             
12             //增加了ipv4协议专有的一些属性,如TTL,组播列表,ip地址,端口等;
13         }
14         
15         //所有面向连接传输控制块,增加了连接,确认,重传等;
16     }
17     
18     //tcp协议的控制块,增加了滑动窗口,拥塞控制算法等tcp专有属性;
19  }

 

传输控制块

标签:class   分层   col   组播   窗口   bsp   request   部分   nec   

原文地址:https://www.cnblogs.com/wanpengcoder/p/11749378.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!