Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof....

19
Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer

Transcript of Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof....

Page 1: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Design and Implementation of WiFiRE MAC Layer Protocol

By

Sameer Kurkure

Under guidance of

Prof. Anirudha Sahoo & Prof. Sridhar Iyer

Page 2: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Architecture

Fixed Base Station and Subscriber Terminal Multiple BS connected with System

System Architecture [2]

Page 3: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

WiFiRE Test Bed

Page 4: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

WiFiRE MAC1

Ethernet MAC1

Ethernet Cable

Layer 2 device

To TCP/IP Layer

System ‘S’

A1

A2

A3

A4

A5

A6

WiFiRE MAC2

Ethernet MAC2

NIC

NIC

WiFiRE MAC3

WiFiRE PHY1

WiFiRE PHY2

WiFiRE PHY3

WiFiRE PHY4

WiFiRE PHY5

WiFiRE PHY6

1. Construct MAC PDU2. Send in proper sequence

in FIFO order at every clock tick

1. Lookup BSID for corresponding CID of the packet

2. Send packet to appropriate PHY

1. Communicate with peer Ethernet MAC2

2. Send/Receive packet from NIC

2

1

3

4

5

6

WiFiRE Team IIT Bombay

Steps1. Packet arrives from TCP/IP layer2. Constructs MPDU passed as payload

to Ethernet MAC3. Packet is transmitted through NIC

using Ethernet cable4. Intermediate processing (if required)5. Passes to WiFiRE MAC sublayer6. Transmit packet to appropriate

antenna interface

Responsibilities1. WiFiRE MAC1 – IITB2. Ethernet MAC1 – IITB3. Ethernet MAC2 – IITM4. WiFiRE MAC2 – IITB (if needed)5. WiFiRE MAC3 - IITM

Page 5: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Startup Scenario

Page 6: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Packet Classifier

BS_TABLE

Packet Controller

Out ThreadIn Thread

Timer Clock

DCID

Set timers

To ST

FromST

To Server

From Server

RaiseSIGALRM

Mapping Table

Scheduler

1. Operates on clock ticks generated from Timer Clock

2. Broadcast Beacon from the interface in first slot of frame

TimingMechanism

1. Processes Beacon from Scheduler

2. Feed it to Timing Mechanism3. Forwards to In Thread for

broadcast

eth0 eth1

CID Generator

Base Station

Page 7: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Connection Classifier

ST_TABLE

Packet Controller

In ThreadOut Thread

TimerClock

DCID/Connection type

Set timers

To Client

FromClient

To BS

From BS

RaiseSIGALRM

TimingMechanism

eth0 eth1

Set timers

1. Beacon packet captured at ST’s interface

1. Forwards to Timing Mechanism

1. Processes Beacon packet2. Finds slots which are

designated to the ST3. Set Clock timers accordingly

Subscriber Terminal

Page 8: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Connection Management

Page 9: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Connection Classifier

ST_TABLE

Packet Controller

Out ThreadIn Thread

TimerClock

DCID/Connection type

Set timers

To Client

FromClient

To BS

From BS

RaiseSIGALRM

1. Classifies the incoming packet according to well known PORT.

2. Does table lookup, a miss causes a new entry in table and requests for DSA creation to Packet controller otherwise return a Data CID

TimingMechanism

1. Fetches the packet from buffer and gains packet info from Connection Classifier

2. Make decisions for generating various request MPDUs

3. Forwards packet for existing connection.

4. Give inputs to timing mechanism

eth0 eth1

1. Packet arrives at the interface

2. Captured by “In Thread”

1. Activates at every clock tick2. Pick up packet from

corresponding queue and transmits

Subscriber Terminal

Page 10: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Packet Classifier

BS_TABLE

Packet Controller

Out ThreadIn Thread

Timer Clock

DCID

Set timers

To ST

FromST

To Server

From Server

RaiseSIGALRM

Mapping Table

Scheduler

1. Classifies the incoming packet according to <IP,PORT> pair

2. Fetches corresponding Data CID

3. Finds ST/Interface on which packet to be transmitted

4. Passes the information to Packet Controller

1. Send/Receive packets to/from server according to pre-defined clock signals

TimingMechanism1. Receives Data CID or Packet

type for new connections from packet classifier

2. Make decisions for generating MPDUs

3. Give inputs to timing mechanism

eth0 eth1

CID Generator

Base Station

Page 11: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Implementation Issues

Page 12: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Why Sockets?

PF_PACKET family RAW socket Packets are directly sent to the application's socket

without being processed by the network stack Bypasses the kernel traps and memory copies Easy to make desirable changes in the volatile design of

protocol Packet capturing library only intercepts packet flow (ex.

libpcap)

Page 13: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Time Synchronization

Reception of Beacon message synchronizes BS and ST Slot Synchronization

Read the DL and UL MAPs Extract associated slots numbers generate sync-sequence Signals are raised according to the sync-sequence Ex. D1 and D3 are the data connections served by same ST

D1 D2 D1 D3 D3 D1 D2 D2 D1 D2 D3 D1BCN

Downlink Uplink

Frame

1 2 1 1 1 3 2 1

-1 -1 -1 -1 -1 1 1 1

1

0

Sync-Sequence

Timing displacements

Mode

Page 14: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Connection are classified by well known ports

Ex: Best Effort on port 80(HTTP), nrtPS on 22(FTP)

Also can be classified by 802.1Q VLAN header

Lookup tables are maintained at BS and ST

Connection Classification

15-13 bits

User Priority

12 bit

CFI

0-11 bits

VID

Page 15: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Additions and Modification in WiFiRE Specifications

Add designated CIDs to carry non classified necessary packets

Increased length field from existing 7 to 15 bits Update STID from 4 to 6 bytes Use <Data CID, Slot #> pair in scheduling Include Flow diagrams involving registration and

ranging at BS and ST

Page 16: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Future Work

Emulate for multiple sector by using multiple NICs

Separate and embed the actual functionality of Layer 2 device on hardware chip

Use hardware clock for more precision Complete Ranging over wireless link Implement DSC mechanism on scheduler Connection classification using 802.1Q VLAN

extended Ethernet header.

Page 17: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

Thank you

Page 18: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

References

WiFiRe: Medium Access Layer (MAC) and Physical Layer (PHY) Specifcation Center of Excellence for Wireless Technology (CEWiT) June 2006.

IEEE 802.16. IEEE Standard for Local and Metropolitan Area Networks - Part 16: Air Interface for Fixed Broadband Wireless Access Systems 2002.

Design and Evaluation of a new MAC Protocol for Long-Distance 802.11 Mesh Networks, Bhaskaran Raman and Kameswari Chebrolu, 11th Annual International Conference on Mobile Computing and Networking paper (MOBICOM), Aug/Sep 2005,Cologne, Germany

GuoSong Chu; Deng Wang; Shunliang Mei A QoS architecture for the MAC protocol of IEEE 802.16 BWA system, IEEE 2002 International Conference on Communications, Circuits and Systems and West Sino Expositions, pages 435- 439 vol.1, 29 June-1 July 2002.

Broadband Wireless Internet Forum, Media Access Protocols: DOCSIS, Document Number WP-2 TG-1 Version 1.1, December 5, 2000.

Wang, H.; Li, W.; Agrawal, D.P. Dynamic admission control and QoS for 802.16 wireless MAN. Wireless Telecommunications Symposium, 2005 pages 60- 66, April 2005.

Page 19: Design and Implementation of WiFiRE MAC Layer Protocol By Sameer Kurkure Under guidance of Prof. Anirudha Sahoo & Prof. Sridhar Iyer.

References (continued)

Hawa, M.; Petr, D.W. Quality of service scheduling in cable and broadband wireless access systems, Tenth IEEE International Workshop on Quality of Service. Pages 247- 255, 2002.

LAN/MAN standards Committee, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Speci¯cations, IEEESA Standards Board, June 2003.

W Richard Stevens UNIX Network Programming, Volume 1, Second Edition, Prentice Hall, 1998

Inside the Linux Packet Filter: The packet's journey through the kernel, http://delivery.acm.org/10.1145/520000/513092/5617s1.html

The Linux Socket Filter: Sni±ng Bytes over the Network, in Linux Journal By Gianluca Insolvibile http://www.linuxjournal.com June 2001

GNU C Library: Signal Handling, http://www.cs.utah.edu/dept/old/texinfo/glibc-manual-0.02/library 21.html

Introduction To Unix Signals Programming, http://users.actcom.co.il/choo/lupg/tutorials