ip包的接收过程概要

原创 2004年09月30日 17:10:00
接收过程:
        从网络上到来的数据,通过网卡接收,此时网卡会向系统发出中断,告诉系统处理。系统得知数据到来时,在中断处理中把数据从网卡的缓存中读到内存中交由链路层处理,链路层把数据放到自己的backlog对列中,然后把bh_base中的network flag置位,就是利用bottom half机制。
        当进程调度器(process schduler)看到network flag被置位时,它会运行相应的例程,例程会把packet从backlog对列中弹出,与相应的协议(通常是ip协议)来进行匹配,然后把packet传递给相应协议的接受函数进行处理。ip层对packet进行错误检测,然后进行路由,packet或者进入outgoing queue(转发)或者交由传输层进行处理(发往本机)。传输层会进行错误检测,查找与端口相关联的socket,然后把packet放到相应的socket的接收对列中。
        一旦packet进入到socket的对列中,socket会唤醒拥有此socket的进程。此进程也许会从read系统调用中返回,把数据从对列中拷贝到自己的buffer中。




数据包接收系列 — IP协议处理流程(一)

本文主要内容:在接收数据包时,IP协议的处理流程。 内核版本:2.6.37 Author:zhangskd @ csdn blog    IP报头   IP报头: struct iphd...
  • zhangskd
  • zhangskd
  • 2014年04月02日 16:32
  • 4602

linux IP包收发流程

本文介绍的是linux下收发网络数据包的流程,传输层有TCP,UDP,网络层IPV4,IPV6,这里以TCP、IPV4为例 发送流程: Step 1: socket:sock_sendmsg, s...
  • leesino
  • leesino
  • 2016年01月19日 14:07
  • 1986

详述IP数据包的转发流程

 IP数据包的转发流程1)IP数据包到达网络层之后,首先根据目的IP地址得到目的网络号,然后决定是直接交付还是转发数据包。如果网络号不匹配,需要转发数据包,则跳到3);2)将数据包转发给目的主机;3)...
  • wolflion
  • wolflion
  • 2009年11月19日 17:52
  • 4477

ip包的发送概要

  发送数据:         应用程序要发送的数据通过调用系统调用把数据传递给socket。socket检查连接的类型以便呼叫合适的send函数(一般是INET)。send函数检查socket的状态...
  • collide
  • collide
  • 2004年09月30日 16:31
  • 1119

IP数据包的传输全过程详解

主机A与主机B通信,A Ping B,图:A-交换机-B,AB同一子网 (1)ping数据包用的是ICMP协议,IP协议的一个子协议,位于三层,包含A的IP,B的IP,三层进行IP封装成包,进入二层...
  • u013485792
  • u013485792
  • 2016年03月18日 17:16
  • 2423

linux下socket收IP数据包

int   raw_sockfd_l2 = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_IP));   struct sockaddr_ll sock_ip_pac...
  • wang_xya
  • wang_xya
  • 2014年03月31日 16:34
  • 779

路由器转发IP包的过程

IP数据包到路由器之后,它首先要读去IP包头的目标IP地址,然后查看路由表,根据路由协议算法,确定一条最佳的路径,为什么要这样做呢,那是因为要确定这个数据包应该从路由器上的那个接口上转发出去,很明显路...
  • xiliang_pan
  • xiliang_pan
  • 2012年08月30日 14:22
  • 13990

网络包的接收过程

1) 网卡设备驱动程序将硬件中断中接收到数据帧存入sk_buff结构, 然后检查硬件帧头,识别帧类型, 放入接收队列, 激活接收软中断作进一步处理. 接收软中断(net_rx_action)提取接收包...
  • collide
  • collide
  • 2004年09月26日 19:23
  • 3668

使用概要文件简化 WebSphere Application Server 管理

http://www.ibm.com/developerworks/cn/websphere/techjournal/0505_wang/0505_wang.html 什么是概要文件...
  • feier7501
  • feier7501
  • 2014年02月19日 20:51
  • 3088

suricata 3.2 源码分析(IP数据包分片重组流程)

在网络通信中如果发送的IP包超过MTU值就会将IP包拆分成多个包发送。那么在suricata中对于这种拆分开得IP包又是如何处理的呢?下面我们一步一步来分析。判断数据包是不是分片包是在DecedeIP...
  • superbfly
  • superbfly
  • 2017年07月11日 17:24
  • 735
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ip包的接收过程概要
举报原因:
原因补充:

(最多只允许输入30个字)