Wireless Application Protocol - WAP

advertisement
IT351: Mobile & Wireless Computing
Wireless Transport Layer
Objective:
– To study the TCP functionality and problem domain as it relates specifically to
integrated wireless networks.
– To provide an insight into available solutions to enhance TCP operation in wireless
networking.
– To provide an overview of the Wireless Application Protocol (WAP) as a solution
following the split-connection model.
Outline
• Transmission Control Protocol - TCP (recap)
– Congestion window
– Slow start
– Fast retransmit
• Problem of TCP in wireless networks
• Solutions:
– Indirect TCP (I-TCP)
• Wireless Application Protocol (WAP)
Overview of the main chapters
Chapter 10:
Support for Mobility
Chapter 9:
Mobile Transport Layer
Chapter 8:
Mobile Network Layer
Chapter 4:
Telecommunication
Systems
Chapter 5:
Satellite
Systems
Chapter 6:
Broadcast
Systems
Chapter 3:
Medium Access Control
Chapter 2:
Wireless Transmission
Chapter 7:
Wireless
LAN
Recap – Transmission Control Protocol
• Transport protocols typically designed for
– Fixed end-systems
– Fixed, wired networks
TCP:
– Provides “reliable, connection oriented, full-duplex,
byte-stream, transport protocol”
– It is an “end-to-end protocol that supports flow and
congestion control”
– Used for Web, email, FTP and many other Internet
applications (majority of Internet traffic is TCP)
– Has been designed and optimised for wired networks
TCP in Wireless Networks
• Flow and Congestion Control
– TCP Transmission Policy – TCP can manage the flow of
data between applications and react to congestion
across the Internet
– TCP Congestion Control – network congestion
• Ask senders to slow down (or stop altogether)
• However, first it must be possible to detect that congestion
has occurred.
• Assumptions made about why packets aren’t arriving congestion
Motivation
• TCP congestion control
– packet loss in fixed networks typically due to (temporary) overload
situations
– router have to discard packets as soon as the buffers are full
– TCP recognizes congestion only indirect via missing
acknowledgements, retransmissions unwise, they would only
contribute to the congestion and make it even worse
– Sender alters the Congestion Window according to the way the
network is currently performing
– The Congestion Window will keep increasing until segments timeout
and then start reducing
– slow-start algorithm as reaction
Motivation
• TCP slow-start algorithm
– sender calculates a congestion window for a receiver
– start with a congestion window size equal to one segment
– exponential increase (double) of the congestion window up to the
congestion threshold, then linear increase (increase by 1)
– missing acknowledgement causes the reduction of the congestion
threshold to one half of the current congestion window
– congestion window starts again with one segment
• TCP fast retransmit/fast recovery
– TCP sends an acknowledgement only after receiving a packet
– if a sender receives several acknowledgements for the same packet,
this is due to a gap in received packets at the receiver
– however, the receiver got all packets up to the gap and is actually
receiving packets
– therefore, packet loss is not due to congestion, continue with current
congestion window (do not use slow-start)
Influences of mobility on TCP-mechanisms
• TCP assumes congestion if packets are dropped
– typically wrong in wireless networks, here we often have
packet loss due to transmission errors
– furthermore, mobility itself can cause packet loss, if e.g. a
mobile node roams from one access point (e.g. foreign agent
in Mobile IP) to another while there are still packets in transit
to the wrong access point and forwarding is not possible
• The performance of an unchanged TCP degrades severely
– however, TCP cannot be changed fundamentally due to the
large base of installation in the fixed network, TCP for
mobility has to remain compatible
– the basic TCP mechanisms keep the whole Internet together
TCP in Wireless Networks
• Effects of dropped packets
– Node A sends data to Node B (wireless)
• Node B drops some packets randomly
• Node B will ask for retransmissions
• Node A assumes congestion
• Solutions
– Link Layer Solutions
• Make the link layer reliable
• TCP may make performance worse
TCP in Wireless Networks
• Solutions
– Split Connections
• Have two TCP connections, one for the wireless link and one
for the wired link
• Wireless TCP (I-TCP) – split connection protocol with new
mechanisms for rate-based congestion control
• Acknowledgements can arrive at the sender before the
segment reaches the receiver
– New Transport Protocols
• Cross-layer design: Interaction between transport and network
layers to know the reason for packet loss – violate layering
structure
– Wireless Application Protocol
• Upper layer protocols for Wireless Internet
• Based on the Split connections solution
Indirect TCP
• Indirect TCP or I-TCP segments the connection
– no changes to the TCP protocol for hosts connected to the
wired Internet, millions of computers use (variants of) this
protocol
– optimized TCP protocol for mobile hosts
– splitting of the TCP connection at, e.g., the foreign agent into 2
TCP connections, no real end-to-end connection any longer
– hosts in the fixed part of the net do not notice the
characteristics of the wireless part
mobile host
access point
(foreign agent)
„wireless“ TCP
„wired“ Internet
standard TCP
I-TCP socket and state migration
access point1
socket migration
and state transfer
Internet
access point2
mobile host
Indirect TCP
• Advantages
– no changes in the fixed network necessary, no changes for
the hosts (TCP protocol) necessary, all current optimizations
to TCP still work
– transmission errors on the wireless link do not propagate into
the fixed network
– simple to control, mobile TCP is used only for one hop
between, e.g., a foreign agent and mobile host
– therefore, a very fast retransmission of packets is possible,
the short delay on the mobile hop is known
• Disadvantages
– loss of end-to-end semantics, an acknowledgement to a
sender does now not any longer mean that a receiver really
got a packet, foreign agents might crash
– higher latency possible due to buffering of data within the
foreign agent and forwarding to a new foreign agent
Wireless Application Protocol - WAP
• Goals
– Build on existing standards
• Internet
• Telecommunications (GSM etc.)
– Industry participation (group experts together)
– Maintain bearer independence
– Maintain device independence
WAP
• Requirements
– Ensure interoperability
– Observe market needs
• Ease of use, price sensitivity, tasks, usage patterns
– Observe network needs
• Less bandwidth, more latency, less predictable
– Observe device needs
• Less CPU power, less memory, limited display/input
WAP
• Key Elements of WAP
–
–
–
–
–
Programming Model
Wireless Markup Language (WML)
Micro-browser for terminal
WAP Stack
Wireless Telephony Application (WTA)
WAP
WSP: Wireless Session Protocol
WML: Wireless Markup Language
WAP
• Wireless Markup Language - WML
–
–
–
–
–
XML based substitute for HTML
More tightly structured than HTML
Attributes used in tags to define data types
Pages are organised into ‘decks’ (like cards)
WMLScript (subset of JavaScript) client side scripting
language, allows interactive (dynamic) pages
– Programmer has to be much more aware of constraints,
interface and efficiency than on PC based Web pages
WAP
• Micro-browser
– Defines how WML should be interpreted on a
particular device
• This could be different depending on the device type
• Many manufacturers have small differences in phone
interfaces (screen size and input etc.)
• But also mobile phone vs. PDA interface
– Code must have small footprint and be efficient
WAP
• WTA - Wireless Telephony Applications
– Allows access to call control functions
– Phone book
– Allows WMLScript services that integrate with the
telephony applications
• Example, a forwarding service that has a WAP interface
WAP
WAP protocol stack
Download