![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
TCP协议和linux实现
文章平均质量分 70
phenix_lord
这个作者很懒,什么都没留下…
展开
-
TCP的URG标志和内核实现之二:发送的实现
int tcp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg, size_t size){ struct iovec *iov; struct tcp_sock *tp = tcp_sk(sk); struct sk_buff *skb; int iovlen, flags, err, copied;原创 2014-12-20 21:07:56 · 1703 阅读 · 0 评论 -
TCP的URG标志和内核实现之一:协议
定义urgent数据的目的:urgent机制,是用于通知应用层需要接收urgent data,在urgent data接收完成后,通知应用层urgent data数据接收完毕。相关协议文本RFC793 RFC1122 RFC6093哪些数据是urgent data?协议规定在TCP抱头的URG位有效的时候,通过TCP报头中的urgent pointer来标识urgent dat原创 2014-12-18 21:57:41 · 3143 阅读 · 1 评论 -
TCP的URG标志和内核实现之三:接收的实现
大致的处理过程TCP的接收流程:在tcp_v4_do_rcv中的相关处理(网卡收到报文触发)中,会首先通过tcp_check_urg设置tcp_sock的urg_data为TCP_URG_NOTYET(urgent point指向的可能不是本报文,而是后续报文或者前面收到的乱序报文),并保存最新的urgent data的sequence和对于的1 BYTE urgent data到tcp_原创 2014-12-21 22:37:49 · 1815 阅读 · 0 评论 -
网络协议攻击之一:基于IP分片的off path 攻击
注:本文是阅读相关文献的笔记这里描述的攻击模式都是offpath模式,攻击者只能伪造报文,没有直接截获或则修改报文的权限,可以发现,即使只能伪造,也能够达到截获的目的。IP分片的特征每个IP分片的目的IP、源IP、传输层协议类型、IP-ID组成一个四元组:接收端根据这个四元组识别出同一个报文的分片,并组装为一个完整的报文。按照协议要求,一个完原创 2015-01-02 10:44:54 · 3398 阅读 · 0 评论 -
skbuff_head_cache去哪里了
在定位linux网络系统内存使用相关问题的时候,/proc/slabinfo下的"skbuff_head_cache"和"skbuff_fclone_cache"是常用的工具,但是有时候你会发现在/proc/slabinfo没有这两个条目,本文记录了其原因以及如何确认对应的sk_buffer结构的大致数量。 如何找到对应的slabinfo找不到"skbu原创 2015-09-01 22:33:43 · 3263 阅读 · 0 评论