路由协议之:WSN网络的RPL路由协议 for 6LOWPAN

目前专门为LoWPAN设计的路由协议(RPL协议)尚在制定完善中,很有可很成为6LoWPAN中使用的标准路由协议

一  RPL处理数据包:

代码流程:

Ieee802.15.4mac

\/

\/

6lowpan子系统,

\/

\/

Ipv6-->ipv6_rcv():

---->ip6_input()--->ip6_input_finish(){

….

nexthdr = skb_network_header(skb)[nhoff];//取出ipv6包头,判断出要使用那个上层协议(tcp,udp,icmp6)

 

raw= raw6_local_deliver(skb, nexthdr);

if((ipprot = rcu_dereference(inet6_protos[nexthdr])) != NULL) {

 

ret = ipprot->handler(skb);---传递给上一层协议(tcp,udp,icmp6)处理

\/

\/

 2 下面是icmp6模块:

首先注册协议到inet6_protos[]

int __initicmpv6_init(void)

{

interr;

 

err= register_pernet_subsys(&icmpv6_sk_ops);

if(err < 0)

returnerr;

 

err= -EAGAIN;

if(inet6_add_protocol(&icmpv6_protocol, IPPROTO_ICMPV6)< 0)

gotofail;

其次,handler定义:

static const structinet6_protocol icmpv6_protocol = {

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值