Linux - 网络子系统 - Transport Layer: TCP

引用


一. Overall 

二. LLD

两个接收队列:

  • 接收队列 sk->sk_receive_queue
  • 后备队列 sk->sk_backlog
  • 最新的linux tcp/ip stack已经删除了prequeue队列

两个发送队列:

  • 发送队列 sk->sk_write_queue
  • 重传队列 sk->tcp_rtx_queue  

涉及文件:

  • include/linux/tcp.h: 定义tcp_options_received,tcp_request_sock,tcp_sock,tcp_timewait_sock等格式,主要是和socket层相关的结构体定义。
  • include/net/tcp.h: 定义tcp_skb_cb,tcp_ca_event,tcp_congestion_ops等tcp协议内部的结构。
  • include/uapi/linux/tcp.h: 定义tcphdr等结构
  • include/net/inet_connection_sock.h: 定义inet_connection_sock_af_ops, inet_connection_sock等 面向连接的协议信息。
  • include/net/inet_hashtables.h: 定义sock相关的hash表。例如,listen, establish的hash表。
  • net/ipv4/tcp.c: 传输层和socket层之间的接口实现。
  • net/ipv4/tcp_ipv4.c: tcp基于ipv4相关的接口实现。
  • net/ipv4/tcp_output.c: tcp发送相关接口实现。
  • net/ipv4/tcp_input.c: tcp接收相关接口实现。
  • net/ipv4/tcp_timer.c: tcp的各类定时器实现

​​​​​​​

 

三. TCP协议疑难杂症全景

TCP协议疑难杂症全景解析|硬核

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值