CS 515 © İbrahim Körpeoğlu 1 BlueSky: A new indoor wireless access network and mobility solution İbrahim Körpeoğlu CS 515 – Mobile and Wireless Networking Bilkent University Computer Engineering Department Bilkent/Ankara
CS 515 © İbrahim Körpeoğlu 1
BlueSky: A new indoor wireless access network and mobility solution
İbrahim KörpeoğluCS 515 – Mobile and Wireless NetworkingBilkent University Computer Engineering DepartmentBilkent/Ankara
CS 515 © İbrahim Körpeoğlu 2
Putting the pieces together
BlueSky is an experimental protoype wireless access network designed at IBM T.J. Watson Research Center, Hawthorne, New York, in 1998.
It has been started before Bluetooth Special Interested group (SIG) has been formed.
In this course, we are now at a level to understand the design of wireless systems from bottom to nearly top.
CS 515 © İbrahim Körpeoğlu 3
Why BlueSky? Aims providing wireless indoor access for palmtop
computer (PDAa) such as palm pilots. Low power and low cost are primary objectives. No service fee.
802.11 is expensive, power hungry Cellular modems have expensive service charge.
Aims providing indoor seamless mobility support for Bluesky enabled devices and computers.
Least modification to end-devices with different operating systems.
PPP constrained.
CS 515 © İbrahim Körpeoğlu 4
Why networking for PDAs?
There are different kinds of palmtop computers. Also called personal digital assistants. Examples
Palm Pilots: running PalmOS Pocket PC: running Windows CE
We concentrated on a solution for Palm Pilots.
CS 515 © İbrahim Körpeoğlu 5
PDA
Ethernet Card
Palm Pilot Networking at that time
Serial Port(UART)
Serial Port
RS-232C Serial Cable Internet
Apps
TCP
IP
PPP
Serial Port(UART)
IP
PPP
Serial Port(UART 16550)
Ethernet Driver
Ethernet Card
Apps
TCP
RS-232C Serial Cable Ethernet Cable
Palm Pilot Desktop PC
Internet
CS 515 © İbrahim Körpeoğlu 6
PDA
BlueSky Wireless Access Design
Serial Port Internet
Apps
TCP
IP
PPP
IP
PPPEthernet
Driver
Ethernet Card
TCP
Ethernet Cable
Palm Pilot
Internet
WirelessAdapter
WirelessModem
Serial Port
Ethernet Card
AccessPoint
RadioDevice(FSK)
RadioDevice(FSK)
Serial Communication over Serial Port
Palm Pilot
AccessPoint
Telnet
Optional
Radio device is a wireless modem that takes serial stream of bytes as input and modulatesthem over the 915Mhz carrier frequency using FSK modulation.
CS 515 © İbrahim Körpeoğlu 7
PDA
PDA
Serial Port
Palm Pilot 1
WirelessAdapter
WirelessModem
Serial Port
Ethernet Card
AccessPoint
Serial Port
Palm Pilot 2
WirelessAdapter
When two palm-pilots transmit at the same time, collisions may occur on the uplink channel. Hence, we need Media Access Control for Uplink.
Downlink Channel(Channel 1)
BlueSky Wireless Channel - DownlinkThere are two wireless physical channelsthat are used between an access point and mobile stations.
1) Downlink channel (channel 1 – f1)2) Uplink channel (channel 2 – f2)
Namely. FDD scheme is used for duplexing.
CS 515 © İbrahim Körpeoğlu 8
PDA
PDA
BlueSky Wireless Channel - Uplink
Serial Port
Palm Pilot 1
WirelessAdapter
WirelessModem
Serial Port
Ethernet Card
AccessPoint
Serial Port
Palm Pilot 2
WirelessAdapter
When two palm-pilots transmit at the same time, collisions may occur on the uplink channel. Hence, we need Media Access Control for Uplink.
Uplink Channel(Channel 2)
Collision!
Uplink channel is shared betweenmobiles that are in the control of the access point. Since it is sharedcollisions may occur without media access control.
CS 515 © İbrahim Körpeoğlu 9
PDA
PDA
BlueSky Wireless Channel Access
Serial Port
Palm Pilot 1
WirelessAdapter
WirelessModem
Serial Port
Ethernet Card
AccessPoint
Serial Port
Palm Pilot 2
WirelessAdapter
When two palm-pilots transmit at the same time, collisions may occur on the uplink channel. Hence, we need Media Access Control for Uplink.
The uplink channel is access by using a polling based mediaaccess control protocol.
CS 515 © İbrahim Körpeoğlu 10
PDA
Serial Port Internet
Apps
TCP
IP
PPP
IP
PPPEthernet
Driver
Ethernet Card
TCP
Ethernet Cable
Palm Pilot
Internet
WirelessAdapter
WirelessModem
Serial Port
Ethernet Card
AccessPoint
Wireless MAC
RadioDevice(FSK)
Wireless MAC
RadioDevice(FSK)
Serial Communication over Serial Port
Palm Pilot
WirelessAdapter
AccessPoint
Telnet
Optional
BlueSky Wireless Access Design with MAC
Pseudo-Serial Communication over Virtual Port
CS 515 © İbrahim Körpeoğlu 11
Wireless Adapter Design
Apps
TCP
IP
PPP
Palm Pilot
UART Driver
Serial Port of PDA (UART)
MACProtocol
PC104 Board
i386 CPU
MS-DOS
RadioTransceiver
(FSK Modulation)
Serial Port (UART1655)
IP PayloadIP Hdtr
IP PayloadIP HdrPPP Hdr CRC
IP PayloadIP HdrPPP Hdr CRCMAC Hdr FCS
1 0 1
0111111011001001
stream of
bytes
stream of
bytes Serial Port
WirelessAdapter
CS 515 © İbrahim Körpeoğlu 12
Wireless Adapter – Outside view
Wireless adapter workingprototype (little bit big!!)
Wireless adapter envisionedproduct form factor.
CS 515 © İbrahim Körpeoğlu 13
Wireless Adapter – Inside – Development Board
Serial portconnected
to PDA
i386CPU
Flash Diskto store files
(2MB)
RadioTransceiver
Antenna
A/CAdapter
PC-104Board
RSSIPin
Parallel Portconnected to radio transceiver
Serial portConnected
to radiotransceiver
2-4MB RAM
CS 515 © İbrahim Körpeoğlu 14
Wireless Adapter – MAC Development Cycle
Physically transfer the flash disks to wirelessadapters (be careful not to break the pins!)
Access Point
Monitor
PC withwindows
• Write MAC protocol software for mobile wireless adapter (using C in Visual C++ environment) in a standalone PC with windows.
• Compile the software for DOS and obtain mac.exe
• Transfer the MAC executable to developmentboard using a floppy (dev. board has a floppydrive).
• At the dev. board, copy the executable from floppy to flash disk of each wireless adapter.
Run the prototypes and test!Dev. Board
FLASH DISK
Repeat 1,2,3,4until Success!
1
2
3
4
CS 515 © İbrahim Körpeoğlu 15
What is PC104 Basically a PC with different
form factor (shape and size) Stackable cards
Video cards, ethernet cards, flopply drive, ...
Cards are connected originally with 104 pins.
Cards are much smaller than ISA cards used in PCs.
Suitable for embedded systems. Floppy Disk Drive (optional)
10Base-T Ethernet Card (optional)
VGA Card (optional)
PC-104 Board
CS 515 © İbrahim Körpeoğlu 16
RS-232C
modemRS232C cable Telephone line
DTE Device DCE Device
Standard for transmitting serial stream of data over short-distances. - Between two computers in a room - Between a computer and a modem - Between a computer and a device - Between two devices
Defines: - The signal levels to represent bits/bytes - The line types in a cable to transmit/receive data and control signals.
RS232C cable
DTE Device DTE DeviceDTE: Data Terminal EquipmentDCE: Data Commmunication Equipment (Circuit terminating)
CS 515 © İbrahim Körpeoğlu 17
Rx FIFO(16 bytes)
Tx FIFO(16 bytes)
RS232 Cable
UART Core
Microprocessor Interface
UART 16550
PPPCOMPUTER
IP
UART Driver
UART: Serial PortInterface
OperatingSystem
Serial PortInterface (UART)
UART: Universal
AsynchronousReceiver Transmitter
CS 515 © İbrahim Körpeoğlu 18
DB25 Male Connector DB25 Female Connector
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
118
19
20
21
22
23
24
25
DTR
Tx D
Rx D
RTS
CTS
SD
12
11
10
9
18
7
6
5
4
3
2
1
25
24
23
122
21
20
19
18
17
16
15
14
13
DTR
TxD
Tx D
RTS
CTS
SG
DSR
CD
RI
DSR
CD
TxD: Transmite Data (from DTE to DCE)RxD: Receive Data (from DCE to DTE) RTS: Request to Send (from DTE to DCE)CTS: Clear to Send (from DCE to DTE)DSR: Data Set Ready (from DCE to DTE) DTR: Data Terminal Ready (from DTE to DCE)SD: Signal GroundCD: Carriier Detect (from DCE to DTE)
RS232C Connectors – 25 Pin
CS 515 © İbrahim Körpeoğlu 19
1
TxD
RxD
DTR
SG
3
4
5
26
8
9
7
5
3
2
1
49
7
6
8
RxD
TxD
DTR
SG
DSR
RTS
CTS
CTS
RTS
DSR
DB9 Male ConnectorDB9 Female Connector
TxD: Transmite Data (from DTE to DCE)RxD: Receive Data (from DCE to DTE) RTS: Request to Send (from DTE to DCE)CTS: Clear to Send (from DCE to DTE)
DSR: Data Set Ready (from DCE to DTE) DTR: Data Terminal Ready (from DTE to DCE)SD: Signal GroundCD: Carriier Detect (from DCE to DTE)
RS232C Connectors – 9 Pin
CS 515 © İbrahim Körpeoğlu 20
0 1 0 0 0 0 0 1 0 1 1
Start bit
7 data bits
Parity bitTwo stop bits-15V
+15V
-3V
+3V
Mark (=1)
Space(=0)
IntermediateRegion
Data byte transmission corresponding to ascii character A (65)
RS232C Data Transmission
LSB MSB
0V
CS 515 © İbrahim Körpeoğlu 21
TxD
RxD
RTS
CTS
2
3
4
5
Femaleconnector
TxD
RxD
RTS
CTS
2
3
4
5
DTE DeviceComputer
RxD
TxD
CTS
RTX
2
3
4
5
Null-ModemCable
Femaleconnector
Femaleconnector
DTE DeviceComputer
RxD
TxD
CTS
RTX
2
3
4
5
Maleconnector
DCE DeviceMODEM
DTE DeviceComputer
Connnecting Terminals using RS-232
CS 515 © İbrahim Körpeoğlu 22
MAC Protocol
Polling based Works over full-duplex wireless
channel Uplink channel: from mobiles to
access point (shared) Downlink channel: from access
point to mobiles (no concention)
Support sleep modes to save power
In its simplest form, round-robin poll schedule
With appropriate scheduding can support different rates to each mobile
MAC Hdr(8 bytes)
Data (optional)(0-2K bytes)
CRC (or FCS)(2 bytes)
MAC Header Fields:- Temp MAC address: 1 bytes- Length: 2 bytes- MAC start frame delibiator- Type of Frame: POLL, NODATA, DATA, REGISTRATION, etc - Flags
-Sequence No: 1 bit-ACK (1 bit)
CS 515 © İbrahim Körpeoğlu 23
MACradio1
radio2MAC
radio3MAC
MACradioAP
full duplex
Ad an ON/OFF switch to each radio and control itusing a MAC protocl
Access Point
Radio Channels over which MAC operates (2 channels)
CS 515 © İbrahim Körpeoğlu 24
MAC protocol overview
MACradio1
radio2MAC
radio3MAC
MACradioAP
Access Point
Poll-R1
DATA
Poll-R2
No-DATA
Poll-R3
DATA
radio4MAC
InviteRegister
CS 515 © İbrahim Körpeoğlu 25
MAC Protocol Concept - 1
AP-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
AP-MAC: AP side of the MAC protocolM-MAC: mobile side of MAC protocol
M1
M2
M3
APM1 Data FCS....
Addr Data FCS....
MAC Header Payload CRC
Channel 1
DATA is variable size with some maximum value.
CS 515 © İbrahim Körpeoğlu 26
MAC Protocol Concept - 2
AP-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M1
M2
M3
AP
APDataFCS ....
Channel 2
CS 515 © İbrahim Körpeoğlu 27
MAC Protocol Concept - 3
AP-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M1
M2
M3
APM2 FCS....
Channel 1
POLL
CS 515 © İbrahim Körpeoğlu 28
MAC Protocol Concept - 4
AP-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M1
M2
M3
APAPDataFCS ....
Channel 2
CS 515 © İbrahim Körpeoğlu 29
MAC Protocol Concept - 5
AP-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M1
M2
M3
APM3 Data FCS....
Channel 1
DATA is variable size with some maximum value.
CS 515 © İbrahim Körpeoğlu 30
MAC Protocol Concept - 6
AP-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M-MAC
RADIO
M1
M2
M3
AP
APFCS ....
NODATA
Channel 2
CS 515 © İbrahim Körpeoğlu 31
MAC Registration and change of point of
Attachment.
AP1 AP2
M1 M2 M3 M4 M5M31
2
3
1. M3 moves out of region of AP1. After some threshold time it will detect that is lost connection will start listening to INVITE packets from other access points if there exists any.
2. When it enter to the region of AP2, it will hear an INTIVE from AP2 and will responde with a REGISTRATION REQUEST after some random backoff time. AP2 will reply to REGISTRATİONREQUEST with a REPLY. REPLY will contain a temporary 1 byte MAC address for M3.
3. M3 will receive REPLY and now it is registrated with AP2. 4. Data Communication can resume over AP2. 5. AP1 will delete M3 from its table after some period.
Both AP1 and AP2 are using the same uplink and downlink radio channels. Therefore, they should not overlap.
This problem can be solved by using more channels.
INVITE
REGRPL
CS 515 © İbrahim Körpeoğlu 32
ProblemMultiplex traffic (PPP packets) from
multiple PPP interfaces at the MAC layer and send them as MAC payloads to
appropriate mobile devices depending on which PPP interfaces the packets has
came from.
Demultiplex MAC frame payloads to different PPP interfaces depending on from which mobiles the frames came
from (again at the MAC layer)
PPPPPP
InternetWirelessModem
Serial Port
Ethernet Card
AccessPoint
Pseudo-Serial Communication over Virtual Port
BlueSky Access Point Design
IP
PPPEthernet
Driver
Ethernet Card
TCP
Ethernet Cable Internet
Wireless MAC
RadioDevice(FSK)
AccessPoint
Telnet
OptionalRun multiple PPPInterfaces for each
mobile device registered.
CS 515 © İbrahim Körpeoğlu 33
BlueSky Access Point Design
Serial Cable
Radio Transceiver
Serial Port
Serial Port
Access Point is Unix Box connected to a radio transceiver over a serial cable. It can run BSDI/OS or Linux.
It may have a monitor connected for debugging purposes.
MAC protocol is implemented as a user level process that talks to the serial port (hence to radio transceiver) on one end and to the PPP interfaces at the other end.
Access point can be configured as IP forwarder to forward the IP packets back and forth between Internet (or LAN) and Wireless Link
Access point terminates the PPP connections from mobile device (namely AP runs a PPP serverfor each mobile that is running a PPP client and that is connected to the AP).
InternetEthernet
Cable
Access Point
CS 515 © İbrahim Körpeoğlu 34
UART
Telnet Server Process
Ethernet Card
Network Interfaces
BlueSky Access Point Implementation
UART Driver
Ether0
Ethernet Cable
RadioDevice(FSK)
PPP0 PPP1 PPPn
tty1 tty2 ttynpty1 pty2 ptyn
TCP
/dev/pty1 /dev/pty2 /dev/ptyn /dev/ttya
EthernetDriver
Routing Table IP
MACProtocol
AP MAC Process
Pseudo-terminalSlaves
Pseudo-terminalMasters
Unix Kernel
FCS PPP_H MAC_H
IP Pkt Eth HdrCRC
Frame Coming from Mobile 2 Frame going to LAN
IP PktCRC
PPP_HIP PktCRC
IP Pkt
CS 515 © İbrahim Körpeoğlu 35
What is PPP?
PPP is Point-to-point protocol It is a protocol to encapsulate IP datagrams so that they can be
sent over serial lines Serial line transmission is just a stream of bytes. It does not have any
packet boundaries. Connection oriented.
A connection has to be established between PPP peers (PPP client and PPP server) before transmitting data (IP packets most of the time).
PPP functions Framing
Encapsulation of Network Layer packets into PPP frames so that they can be sent over serial lines
Link control protocol To establish, test, and configure data-link connections.
Network control protocol To configure the network layer protocols.
CS 515 © İbrahim Körpeoğlu 36
PPP Framing
Flag0x7E
Addr0xFF
Control0x03
Protocol Information CRCFlag0x7E
1 1 1 2 up to 1500 bytes 2 1
0x0021 IP packet
0xc021 LCP Data
0x8021 NCP Data
LCP: Link Control Protocol
NCP: Network Control Protocol
ACP: Authentication Control Protocol
CRC is computed over Addr, Control, Protocol, and Information fields before byte stuffing.
PPP DATA PACKET
PPP CONTROL PACKET
PPP CONTROL PACKET
PPP Frame format (used for both control and data packets)
CS 515 © İbrahim Körpeoğlu 37
IP
Why PPP Framing needed?
Serial Port(UART)
Serial Port(UART 16550)
Ethernet Driver
Ethernet Card
RS-232C Serial Cable
IP Payload
IP Payload
IP Payload
………………
IP
TCP
APP
Serial PortDriver
Serial PortDriver
Length
Length
Length
IP Packets are sent over serial line without any other encapsulation. Serial line is not error-free. Some bytes can get corrupted. Assume the receiver IP detects the boundaries of IP packets by looking to the length field in the header of IP packets. If the byte(s) that is corrupted carries the length field of the IP packet that is currently transmitted overthe serial line, the the receiving IP layer can not detect the end-of-IP-packet correctly. Hence we will loose synchronization between two ends and no further IP packet can be received correctlyat the receiver side.
Assume we run IP directly over Serial Port without using PPP.
CS 515 © İbrahim Körpeoğlu 38
Byte StuffingReplace the occurrence of 0x7e with 0x7d, 0x5eReplace the occurrence of 0x7d with 0x7d, 0x5d
56 99 01 7d 5e 05 7d 5d 17 7d 5d 7d 5e 89
56 99 01 7e 05 7d 17 7d 7e 89
210003ff7e
19 7d
7e
Byte Stuffed Content
Data CRC
Start of Frame
End of Frame
210003ff
19 7d 5d
Hdr
0x7e is the flag byte. 0x7d is the escape byte. Inside the frame, no occurrences of 0x7e after byte stuffing.
0x7e is in hexadecimal. It is equal to 01111110 in binary.
CS 515 © İbrahim Körpeoğlu 39
Apps
TCP
IP
PPPClient Side
Serial Port(UART)
IP
PPPServer Side
Serial Port(UART 16550)
Ethernet Driver
Ethernet Card
Ethernet Cable
PPPConnection
Establishment
Data Transfer
1)
2)
PPPConnection
Terminationt3)
PPP Functions
Link Establishment
AuthenticationNetwork
ConfigurationData Transfer Termination
PPP Connection Establishment PPP Connection Termination
CS 515 © İbrahim Körpeoğlu 40
PPP Connection Establishment
PPP
CLIENT
LCP Packet (CON_REQ)
LCP Packet (CONF_ACKL)
ACP (REQ)
ACP (ACK)
NCP (CONF_REQ)
NCP (CONF_ACK)PPP
SERVER
- Provideincoming MTU-Set auth protocolto be used. Set outgoing MTU
AuthenticateUsing PAP, CHAP
EAP etc.
Provide IPAddress,
DNS Address, etc.
Set IP AddressSet DNS Address
ProvideInfo for
Authentication (uname, password)
-Set outgoing MTU-Provide incoming MTU-Provide which Authprotocol to be used.
1
2
3
EstablishedEstablished
CS 515 © İbrahim Körpeoğlu 41
PPP Connection Establishment
After PPP connection establishment A PPP client learns at least:
the IP and DNS addresses that it will use to connect to the Internet
the link MTU (maximum PPP packet size) that is to be exported to the IP layer, so that IP layer fragments IP packets that are larger than the MTU
PPP Connection establishment Takes time! Incurs a lot of control traffic (control packets) over the low
bit-rate serial (wired or wireless) link.
CS 515 © İbrahim Körpeoğlu 42
PPP1 PPP2Ethernet
Driver
Ethernet Card
AP Wireless MAC
RadioDevice(FSK)
Access Point
Apps
TCP
IP
PPP
Wireless MAC
RadioDevice(FSK)
Apps
TCP
IP
PPP
Wireless MAC
RadioDevice(FSK)
Mobile A
Mobile B
139.179.120.10(255.255.255.0)
130.179.121.2
130.179.122.2130.179.122.1 130.179.121.1
PPP Connection
PPP Connection
IP139.129.120/24 eth0
139.129.121.2 pp1
139.129.122.2 pp2
RTTable
Our wireless link and PPP
CS 515 © İbrahim Körpeoğlu 43
Looking back to our solution
Our solution so far provides Wireless connectivity for multiple mobile devices that are
connected to a single access point. By use of PPP, mobile devices can run IP and related
applications and access point can act as a forwarder. We may have more than one access point installed in a
target region. We will mobile connected to some access point.
However, the solution so far does not provide seamless mobility between access points, since PPP connection will break upon change of access point and higher layer protocols and applications will be disturbed.
CS 515 © İbrahim Körpeoğlu 44
PPP1Ethernet
Driver
Ethernet Card
AP Wireless MAC
Radio
Apps
TCP
IP
PPP
Wireless MAC
Radio
Mobile A
139.179.120.10(255.255.255.0)
130.179.121.2 130.179.121.1
IP
139.129.120/24 eth0
139.129.121.2 pp1
RT Table
Apps
TCP
IP
PPP
Wireless MAC
Radio
Mobile A
130.179.131.2PPP1
Ethernet Driver
Ethernet Card
AP Wireless MAC
Radio
139.179.130.20(255.255.255.0)
130.179.131.1
IP
139.129.130/24 eth0
139.129.131.2 pp1
RT Table
Router
Access Point A
Access Point B
carrier detection
MAC level registration
PPP Connection
carrier detection
MAC level registration
PPP Connection
moves
Data Flow
Mobile’s IP address changes!
CS 515 © İbrahim Körpeoğlu 45
BlueSky’s Approach
Do not terminate PPP at the access point. Means: do not run PPP server at the access point.
Run PPP at a backend server. Tunnel PPP traffic from access points to the
backend server. Establish PPP once Redirect PPP traffic to a new tunnel when
point of access changes.
CS 515 © İbrahim Körpeoğlu 46
Concept
AP1 AP2
M1 M2 M3 M4 M5M3
PBS
PPP Backend Server (PBS)
PPP
PPP PPP
Eth
IP
INTERNET
Tunnel 1Tunnel 2 (PPP/UDP/IP/LAN)
PPP Connection
Data Flow
Mobile’s IP Address remains same.
139.179.120.2 139.179.120.2
139.179.120.1
LAN
LANLAN
CS 515 © İbrahim Körpeoğlu 47
IPWireless
MAC
RadioDevice(FSK)
UDP
Ethernet
Apps
TCP
IP
PPP
Wireless MAC
RadioDevice(FSK)
IP
UDP
Ethernet
PPP
IP
Tunnel
TunnelAgent
TunnelAgent
Palm Pilot
Access Point
PPP Backend Server
Router
IP Pyld IP H
IP Pyld IP H PPP_H
IP Pyld IP H PPP_HCRCFCS MAC_H
IP Pyld IP H PPP_HCRC TUN_H
IP Pyld IP Hdr PPP_HCRC
IP Pyld IP Hdr PPP_HCRC TUN_H
IP Pyld IP H PPP_HCRC TUN_H UDP_H IP_H
IP Pyld IP H
CRC
IP Pyld IP H PPP_HCRC
Protocol Architecture
CS 515 © İbrahim Körpeoğlu 48
Unix Kernel
BlueSky New Access Point Implementation
/dev/ttya
MACProtocol
AP_MAC/Tunnel Process
Tunnel Protocol
UDP socket
FCS PPP_HIP PktCRC
PPP_HIP PktCRC
PPP_HCRC TUN_HIP PktMAC_H
LANWireless channel Radio
Device(FSK)
UART
UART Driver
UDP
Ethernet Card
Ethernet Driver
IP
CS 515 © İbrahim Körpeoğlu 49
Network Interfaces
BlueSky PPP Backend Server Implementation
PPP0 PPP1 PPPn
tty1 tty2 ttynpty1 pty2 ptyn
UDP
/dev/pty1 /dev/pty2 /dev/ptyn
TunnelProtocol
Pseudo-terminalSlaves
Pseudo-terminalMasters
Frame going to LAN
UDP socket
Routing Table
PPP_H CRCTUN_H IP PktPPP_H CRCIP Pkt
IP Pkt
PPP_H CRCTUN_H IP PktUDP_H
PPP_HCRC IP Pkt
Ethernet Card
EthernetInterface
EthernetDriver
From Access Point
To Internet
Common Data path
Tunnel Process
CS 515 © İbrahim Körpeoğlu 50
Advantages of terminating PPP at the backend server and BlueSky in general Authentication is easier.
Password files can be kept at a central location (PBS) Otherwise they should be replicated in each access point.
PPP connection is established once for data communication It is not terminated while changing point of attachment. Only terminated when mobile no longer wants to access the network IP address remains same although point of access changes.
IP layers is unaware of mobility (hence all other higher layers: TCP, UDP, Aplications)
Can support fast handoffs (PPP connection establishment takes time). Is more bandwidth efficient for the resource scarce wireless access link.
Total seamless mobility support Mobility can be supported in this way for other network layer protocols
other than IP such as IPX and Appletalk. No need to modify mobile devices hardware and software.
No need to modify different OS stacks for PDAs.
CS 515 © İbrahim Körpeoğlu 51
Limitations of terminating PPP at the backend server and BlueSky in general.
Solutions is restricted with PPP as the data link layer.
All traffic has to go through PPP backend server This can be optimized by parsing PPP packets at the access
point and looking to the destination IP address The bandwidth of the tunnel path (10Mbps) is much much
higher than the bandwidth of the wireless link (150 Kbps) Packet delays are negligible over the wired links.
Running PPP between IP and packet oriented MAC layer introduces:
Extra framing (one at PPP layer, one at the MAC layer) Extra connection time: MAC registration + PPP connection
establishment.
CS 515 © İbrahim Körpeoğlu 52
BlueSky Summary
Wireless Access Shared 150 Kbps bandwidth FSK modulation at 915MHz 10m range Full duplex channel (FDD duplexing) Polling based access-point-coordinated MAC protocol
Mobility Solution at the data-link layer Works for PPP and various network protocols: IP, IPX,
AppleTalk Roaming in a single administrative domain.
CS 515 © İbrahim Körpeoğlu 53
BlueSky versus Bluetooth
BlueSky BlueToothDeveloped by a small group of people at IBM in 1998.
Developed by a consortium consisting of 5 big companies (IBM, Intel, Toshiba, Ericsson, Nokia) and more than 500 adaptor companies. Started in May 1998.
10m range 10m range
FSK modulation GFSK modulation
915 MHz operating frequency 2.4 GHz operating frequency
FDD duplexing TDD duplexing
Access point coordinated polling based MAC (no strict time slotting)
Master coordinated polling based MAC based on strict time slotting.
150 Kbps shared bandwidth (no limit on devices other than performance).
1Mbps shared bandwidth (at most 8 devices: 1 master, 7 slaves)
Complete networking solution. Does not define exactly how IP can be run over it.
Complete mobility solution. Does not define a mobility solution.