青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大龍的博客

常用鏈接

統(tǒng)計

最新評論

struct sock結構的簡單注釋 --- 轉

內核網(wǎng)絡四層結構:BSD socket層、INET socket層、IP層、數(shù)據(jù)鏈路層

sock結構工作在INET socket層,所有BSD socket層的操作都通過struct sock
及其域字段prot指針轉化為prot鎖指向的函數(shù)處理,所以sock結構是維系
BSD socket層和INET socket層的紐帶,其重要性是不言而喻的。

下面是對sock結構的簡單注釋,有些沒有的待我弄懂后再來修改,^_^

struct sock {
 /* Socket demultiplex comparisons on incoming packets. */
 __u32   daddr;  /* 外部IP地址   */
 __u32   rcv_saddr; /* 綁定的本地IP地址  */
 __u16   dport;  /* 目標端口   */
 unsigned short  num;  /* 本地端口    */
 int   bound_dev_if; /* 綁定網(wǎng)卡接口的索引 不為0  */

 /* 用于各種協(xié)議查找表的哈希鏈表 */
 struct sock  *next;
 struct sock  **pprev;
 struct sock  *bind_next;
 struct sock  **bind_pprev;

 volatile unsigned char state,  /* 連接狀態(tài)   */
    zapped;  /* In ax25 & ipx means not linked */
 __u16   sport;  /* 源端口    */

 unsigned short  family;  /* 地址簇   */
 unsigned char  reuse;  /* SO_REUSEADDR設置,表示地址重用 */
 unsigned char  shutdown; /* 半關閉標志 SEND_SHUTDOWN和RCV_SHUTDOWN掩碼 */
 atomic_t  refcnt;  /* 引用計數(shù)   */

 socket_lock_t  lock;  /* 同步鎖.   */
 int   rcvbuf;  /* 接受緩沖區(qū)長度(單位:字節(jié)) */

 wait_queue_head_t *sleep;  /* 等待隊列,通常指向socket的wait域 */
 struct dst_entry *dst_cache; /* 目的地緩存,用于路由查找結果  */
 rwlock_t  dst_lock; /* 目的地緩存鎖*/
 atomic_t  rmem_alloc; /* 已接收隊列字節(jié)數(shù) */
 struct sk_buff_head receive_queue; /* 接收包隊列   */
 atomic_t  wmem_alloc; /* 已發(fā)送字節(jié)數(shù) */
 struct sk_buff_head write_queue; /* 包發(fā)送隊列   */
 atomic_t  omem_alloc; /* "o"是"option"(選項)或"other"(其它)的意思 */
 int   wmem_queued; /* 穩(wěn)定的隊列長度 */
 int   forward_alloc; /* 提前分配的空間 */
 __u32   saddr;  /* 發(fā)送源地址   */
 unsigned int  allocation; /* 分配模式   */
 int   sndbuf;  /* 發(fā)送緩沖區(qū)長度(單位:字節(jié))  */
 struct sock  *prev;

 /* Not all are volatile, but some are, so we might as well say they all are.
  * XXX Make this a flag word -DaveM
  */
 volatile char  dead,
    done,
    urginline,
    keepopen,
    linger,
    destroy,
    no_check, /*SO_NO_CHECK標志,表示是否檢查包*/
    broadcast,
    bsdism;
 unsigned char  debug;
 unsigned char  rcvtstamp;
 unsigned char  userlocks;/*SO_SNDBUF和SO_RCVBUF標志 */
 int   proc;
 unsigned long         lingertime;

 int   hashent;
 struct sock  *pair;

 /* The backlog queue is special, it is always used with
  * the per-socket spinlock held and requires low latency
  * access.  Therefore we special case it's implementation.
  */
 struct {
  struct sk_buff *head;
  struct sk_buff *tail;
 } backlog;

 rwlock_t  callback_lock;/*用于結構末尾的回調函數(shù)互斥*/

 /* 錯誤隊列,很少使用 */
 struct sk_buff_head error_queue;

 struct proto  *prot;/*網(wǎng)絡地址簇內部協(xié)議處理*/

#if defined(CONFIG_IPV6) || defined (CONFIG_IPV6_MODULE)
 union {
  struct ipv6_pinfo af_inet6;
 } net_pinfo;
#endif

 union {
  struct tcp_opt  af_tcp;
#if defined(CONFIG_INET) || defined (CONFIG_INET_MODULE)
  struct raw_opt  tp_raw4;
#endif
#if defined(CONFIG_IPV6) || defined (CONFIG_IPV6_MODULE)
  struct raw6_opt  tp_raw;
#endif /* CONFIG_IPV6 */
#if defined(CONFIG_SPX) || defined (CONFIG_SPX_MODULE)
  struct spx_opt  af_spx;
#endif /* CONFIG_SPX */

 } tp_pinfo;

 int   err, err_soft; /* Soft holds errors that don't
         cause failure but are the cause
         of a persistent failure not just
         'timed out' */
 unsigned short  ack_backlog;
 unsigned short  max_ack_backlog;
 __u32   priority;
 unsigned short  type;  /*socket類型,如:SOCK_STREAM*/
 unsigned char  localroute; /* 僅用于本地路由 */
 unsigned char  protocol; /*socket 所屬網(wǎng)絡地址簇的協(xié)議*/
 struct ucred  peercred; /*對端sock信息 SO_PEERCRED標志設置*/
 int   rcvlowat; /*SO_RCVLOWAT標志位*/
 long   rcvtimeo; /*SO_RCVTIMEO標志位*/
 long   sndtimeo; /*SO_SNDTIMEO標志位*/

#ifdef CONFIG_FILTER
 /* Socket過濾指令 */
 struct sk_filter       *filter;
#endif /* CONFIG_FILTER */

 /* This is where all the private (optional) areas that don't
  * overlap will eventually live.
  */
 union {
  void *destruct_hook;
    struct unix_opt af_unix;
#if defined(CONFIG_INET) || defined (CONFIG_INET_MODULE)
  struct inet_opt af_inet;
#endif
#if defined(CONFIG_ATALK) || defined(CONFIG_ATALK_MODULE)
  struct atalk_sock af_at;
#endif
#if defined(CONFIG_IPX) || defined(CONFIG_IPX_MODULE)
  struct ipx_opt  af_ipx;
#endif
#if defined (CONFIG_DECNET) || defined(CONFIG_DECNET_MODULE)
  struct dn_scp           dn;
#endif
#if defined (CONFIG_PACKET) || defined(CONFIG_PACKET_MODULE)
  struct packet_opt *af_packet;
#endif
#if defined(CONFIG_X25) || defined(CONFIG_X25_MODULE)
  x25_cb   *x25;
#endif
#if defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE)
  ax25_cb   *ax25;
#endif
#if defined(CONFIG_NETROM) || defined(CONFIG_NETROM_MODULE)
  nr_cb   *nr;
#endif
#if defined(CONFIG_ROSE) || defined(CONFIG_ROSE_MODULE)
  rose_cb   *rose;
#endif
#if defined(CONFIG_PPPOE) || defined(CONFIG_PPPOE_MODULE)
  struct pppox_opt *pppox;
#endif
#ifdef CONFIG_NETLINK
  struct netlink_opt *af_netlink;
#endif
#if defined(CONFIG_ECONET) || defined(CONFIG_ECONET_MODULE)
  struct econet_opt *af_econet;
#endif
#if defined(CONFIG_ATM) || defined(CONFIG_ATM_MODULE)
  struct atm_vcc  *af_atm;
#endif
#if defined(CONFIG_IRDA) || defined(CONFIG_IRDA_MODULE)
  struct irda_sock        *irda;
#endif
 } protinfo;   /*私有數(shù)據(jù)區(qū),網(wǎng)絡地址簇規(guī)范*/ 


 /* This part is used for the timeout functions. */
 struct timer_list timer;  /* sock清除定時器. */
 struct timeval  stamp;  /*最后到達的包的時間戳*/

 /* Identd and reporting IO signals */
 struct socket  *socket; /*BSD socket層套接字*/

 /* RPC層私有數(shù)據(jù) */
 void   *user_data;
 
 /* 回調函數(shù) */
 void   (*state_change)(struct sock *sk);
 void   (*data_ready)(struct sock *sk,int bytes);
 void   (*write_space)(struct sock *sk);
 void   (*error_report)(struct sock *sk);

   int   (*backlog_rcv) (struct sock *sk,
      struct sk_buff *skb); 
 void                    (*destruct)(struct sock *sk);
}; 

posted on 2013-02-16 21:25 大龍 閱讀(845) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲夜间福利| 久久久久久婷| 亚洲视频第一页| 亚洲欧美综合国产精品一区| 午夜视频在线观看一区| 免费看的黄色欧美网站| 欧美激情一区二区在线| 国产精品三级久久久久久电影| 国产精品日本精品| 性欧美精品高清| 免费欧美日韩| 在线一区二区三区四区| 国产精品专区第二| 亚洲免费不卡| 久久人人97超碰精品888| 91久久视频| 亚洲视频999| 欧美电影免费观看高清| 亚洲尤物影院| 欧美视频在线不卡| 亚洲高清免费在线| 午夜国产欧美理论在线播放 | 欧美高清视频| 在线观看91精品国产入口| 亚洲丝袜av一区| 西西裸体人体做爰大胆久久久| 激情欧美日韩| 久久精品国产欧美激情| 亚洲精品综合| 欧美成人精品不卡视频在线观看| 国语自产精品视频在线看| 性欧美精品高清| 久久亚洲综合色| 狠狠狠色丁香婷婷综合久久五月 | 亚洲国产欧美日韩| 麻豆精品精品国产自在97香蕉| 亚洲欧美成人综合| 国内精品久久久久影院色| 亚洲自拍啪啪| 亚洲欧美日韩系列| 亚洲日本电影在线| 亚洲精品三级| 在线不卡a资源高清| 9l视频自拍蝌蚪9l视频成人| 欧美精品粉嫩高潮一区二区 | 亚洲国产成人av好男人在线观看| 亚洲午夜精品| 国产精品自拍在线| 91久久国产综合久久91精品网站| 国产午夜精品一区二区三区欧美| 性欧美8khd高清极品| 欧美成人免费网| 久久亚洲综合色一区二区三区| 久久国产精品一区二区三区| 韩国精品主播一区二区在线观看| 一本色道久久综合一区| 国产精品久久久久久影视| 欧美一区二区三区四区在线 | 美女精品视频一区| 国产欧美日韩在线| 欧美成ee人免费视频| 欧美日韩dvd在线观看| 一本色道综合亚洲| 亚洲午夜国产一区99re久久| 日韩写真在线| 欧美夜福利tv在线| 亚洲欧洲日韩女同| 亚洲午夜激情免费视频| 亚洲午夜电影网| 欧美日韩国产综合视频在线观看中文| 蜜臀av一级做a爰片久久 | 另类综合日韩欧美亚洲| 尤物yw午夜国产精品视频| 香蕉久久夜色| 久久中文在线| 91久久亚洲| 欧美激情日韩| 日韩亚洲欧美在线观看| 国产综合欧美在线看| 欧美在线国产| 亚洲一区二区黄色| 国产精品区一区二区三| 午夜精品久久久久影视| 久久九九久精品国产免费直播| 欧美精品亚洲精品| 夜夜嗨av一区二区三区四区 | 国产日本亚洲高清| 欧美一区二区在线免费观看| 久久人人97超碰人人澡爱香蕉| 伊人男人综合视频网| 欧美高清视频免费观看| 一区二区三区**美女毛片| 香蕉成人伊视频在线观看 | 国产精品成人观看视频国产奇米| 六月婷婷久久| 亚洲三级国产| 国产女人aaa级久久久级| 欧美中文字幕视频| 亚洲欧洲一区二区三区久久| 性色av一区二区怡红| 曰韩精品一区二区| 欧美日韩精品在线| 久久国产视频网| 亚洲人成网在线播放| 亚洲电影免费观看高清| 欧美制服丝袜| 亚洲精品激情| 开心色5月久久精品| 日韩午夜在线| 黄色亚洲精品| 国产精品啊啊啊| 亚洲香蕉网站| 欧美国产丝袜视频| 亚洲欧洲精品成人久久奇米网| 欧美亚州韩日在线看免费版国语版| 午夜精品久久久久影视 | 午夜一级在线看亚洲| 亚洲国产欧洲综合997久久| 国产精品福利在线观看| 欧美大片专区| 久久久久久高潮国产精品视| 一区二区三区高清视频在线观看 | 一区二区三区欧美在线| 欧美日韩一区二区在线视频 | 亚洲美女视频在线免费观看| 欧美在线日韩在线| 国产亚洲人成a一在线v站 | 亚洲视频大全| 亚洲理论在线观看| 久热精品视频在线观看一区| 午夜日韩在线| 亚洲一区在线看| 夜久久久久久| 亚洲激情一区二区三区| 在线观看成人av电影| 国产一区二区精品久久| 国产精品亚洲第一区在线暖暖韩国 | 亚洲无玛一区| 亚洲国产精品一区二区第一页| 国产夜色精品一区二区av| 国产精品国产三级欧美二区| 欧美日韩另类视频| 欧美日韩国产色视频| 欧美国产日韩精品| 久久一区免费| 美女视频黄a大片欧美| 久久综合亚洲社区| 久久久久久久久久码影片| 欧美一级电影久久| 欧美一区二区三区四区夜夜大片| 亚洲免费视频网站| 亚洲综合色噜噜狠狠| 亚洲欧美韩国| 性欧美长视频| 久久久97精品| 日韩亚洲欧美在线观看| 日韩午夜在线| 亚洲视频欧美在线| 亚洲综合不卡| 久久成人一区二区| 麻豆精品91| 欧美日韩精品免费看| 欧美午夜精品电影| 国产亚洲精品资源在线26u| 激情欧美一区| 亚洲乱码久久| 欧美一区二区三区另类| 久久乐国产精品| 欧美激情一区二区| 一本大道久久a久久综合婷婷| 亚洲一区影院| 久久久久久久久久久久久9999| 欧美 日韩 国产 一区| 欧美日韩直播| 好吊一区二区三区| 亚洲美女免费视频| 午夜精品视频在线观看一区二区| 久久久国产精品一区二区中文| 免费日韩av| 亚洲一区二区三区激情| 久久久青草婷婷精品综合日韩| 欧美日韩国产综合网| 国产日韩欧美一区二区三区在线观看| 一区二区三区自拍| 亚洲一级高清| 蜜桃av一区| 亚洲午夜精品福利| 欧美成人影音| 国产视频精品网| 99在线精品视频| 久久一区二区视频| 这里只有精品电影| 欧美成人三级在线| 国产一区二区日韩| 亚洲视频在线观看网站| 欧美成人官网二区| 午夜精品久久久久久99热| 欧美激情成人在线| 一区在线免费观看| 欧美在线观看一区二区三区|