Download presentation
Presentation is loading. Please wait.
1
Modular Protocol Architecture Link Layer Protocol Interface Specification Ruchira Datta UC Berkeley WOW Group
2
Architecture Overview Protocols for each layer in modules Modules must conform to interface BWOW: the glue between modules All mode dependency in BWOW (simulation vs. implementation mode) Modules make mode-independent calls to BWOW
3
Conventions struct net_device *dev –Linux networking device/link interface struct sk_buff *skb –Linux “socket buffer” (packet) structure prm_typ is an ASN.1 parameter type –{ INTEGER, BIT STRING, … } Functions return an int, which is an error code, unless otherwise specified
4
BWOW Responsibilities bwow_device_tx_from_link( dev, skb ) bwow_network_rx_from_link( dev, skb ) bwow_device_ioctl( dev, struct ifreq *ifr, int cmd ) void bwow_notify_link_busy( dev ) void bwow_notify_link_available( dev ) skb handling functions timer functions
5
Link Layer Interface Hooks I struct bwow_link_layer_protocol_spec { char *name; char *version; unsigned short protocol_type; int (*protocol_init)( dev ) int (*protocol_shutdown)( dev ) int (*add_header)( skb, dev, ushort type, void *dst, void *src, int len ) int (*tx_from_network)( dev, skb ) int (*rx_from_device)( dev, skb ), …
6
Link Layer Interface Hooks II struct bwow_link_layer_protocol_spec { … void (*notify_device_busy)( dev ) void (*notify_device_available)( dev ) ioctl ( dev, struct ifreq *ifr, int cmd ) unsigned (*get_mtu)( dev ) int (*change_mtu)( dev, int new_mtu ) …
7
Link Layer Interface Hooks III struct bwow_link_layer_protocol_spec { … struct net_device_stats * (*get_statistics)( dev ) int (*statistics_length)( dev ) int (*print_statistics)( dev, char *page) …
8
Link Layer Interface Hooks IV struct bwow_link_layer_protocol_spec { … int (*num_params)( prm_typ ) int (*is_param_set_by_user)( prm_typ, int i ) char * (*get_param_name)( prm_typ, i ) int (*get_param_index)( prm_type, char *name ) void * (*get_param_value( prm_type, i ) int (*set_param_value( prm_type, void *pvalue ) }
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.