在移动终端向监控中心发送定位信息的过程中,移动终端上的 GPRS 通信程序通过 socket 接口发送 TCP/IP 数据包,内核根据 IP 地址和路由表,找到 PPP 网络接口,然后调用函数 ppp_start_xmit( ),此时控制权就转移到了 PPP 协议模块。函数 ppp_start_xmit( ) 调用函数 ppp_xmit_process( ) 去发送队列中的所有数据...
pppd在make_ppp_unit函数中 调用ioctrl(PPPIOCNEWUNIT)创建一个网络接口(如ppp0),内核中的PPP协议模块在处理PPPIOCNEWUNIT时,调用 register_netdev向内核注册ppp的网络接口,该网络接口的传输函数指向ppp_start_xmit。 当应用程序发送数据时,内核根据IP 地址和路由表,找到ppp网络接口,然后调用ppp_start_xmit函数,此时...
在移动终端向监控中心发送定位信息的过程中,移动终端上的 GPRS 通信程序通过 socket 接口发送 TCP/IP 数据包,内核根据 IP 地址和路由表,找到 PPP 网络接口,然后调用函数 ppp_start_xmit( ),此时控制权就转移到了 PPP 协议模块。函数 ppp_start_xmit( ) 调用函数 ppp_xmit_process( ) 去发送队列中的所有数据...
*/int (*start_xmit)(struct ppp_channel 凭 struct sk_buff *);/* handle an ioctl call that has come in via /dev/ppp */ int (*ioctl)(struct pppchannel unsigned int, unsigned long);/* data structure describing one ppp unit.* a ppp unit corresponds to a ppp network interface 37、 ...
当应用程序发送数据时,内核根据IP地址和路由表,找到ppp网络接口,然后调用ppp_start_xmit函数,此时控制就转移到PPP协议处理模块了。ppp_start_xmit调用函数ppp_xmit_process去发送队列中的所有数据包,ppp_xmit_process又调用ppp_send_frame去发送单个数据包,ppp_send_frame根据设置,调用压缩等扩展处理之后,又经ppp_push...
ppp_start_xmit(struct sk_buff *skb, struct net_device *dev) { struct ppp *ppp = (struct ppp *) dev->priv; int npi, proto; unsigned char *pp; npi = ethertype_to_npindex(ntohs(skb->protocol)); 根据包类型取 PPP协议类型 if (npi < 0) goto outf; ...
当应用程序发送数据时,内核根据IP地址和路由表,找到ppp网络接口,然后调用ppp_start_xmit函数,此时控制就转移到PPP协议处理模块了。ppp_start_xmit调用函数ppp_xmit_process去发送队列中的所有数据包,ppp_xmit_process又调用ppp_send_frame去发送单个数据包,ppp_send_frame根据设置,调用压缩等扩展处理之后,又经ppp_push...
*/ int (*start_xmit)(struct ppp_channel *, struct sk_buff * 38、); /* Handle an ioctl call that has come in via /dev/ppp. */ int (*ioctl)(struct ppp_channel *, unsigned int, unsigned long); }; /* * Data structure describing one ppp unit. * A ppp unit corresponds to a ...
pch->chan->ops->start_xmit 是什么?它就是具体的传输方式了,比如说对于串口发送方式,则是ppp_async.c: ppp_asynctty_open中注册的ppp_async_send函数,ppp_async_send经ppp_async_push函数调用 tty->driver->write把数据发送串口。 1.用 户数据发送过程如下所示: ...
pppd在make_ppp_unit函数中,调用ioctrl(PPPIOCNEWUNIT)创建一个ppp0接口,内核的PPP协议模块在处理PPPIOCNEWUNIT时,会调用register_netdev接口注册一个网络设备,该网络的设备的传输函数为ppp_start_xmit,当应用程序发送数据时,根据IP地址和路由表找到ppp0接口,然后调用ppp_start_xmit发送数据,此时数据就到ppp协议模块...