Internet ProtocolsIP ProtocolMobility and IPMobileIPMobileIP (cont’d)TCP and UDPUDPTCPTCP Reliability MechanismsTCP (cont’d)WAPWhy is WAP needed?Bearer LimitationsWAP Forum: www.wapforum.orgHow does WAP work?What works with WAP?WAP Protocol Model (Stack)WAP ArchitectureWDP LayerWTLS LayerWTP LayerWSP LayerWAEWMLBenefits of WAPDrawbacks to WAPCaches and proxy serversDNSThe Internet Naming SchemeDNS OperationDNS and cachingInternet and Network SecurityFirewallFiltering levelsFiltering levels (cont’d)Basic Internet FirewallsAdvanced Internet FirewallsAdvanced Internet Firewalls (cont’d)Virtual Private NetworksDirectory and Discovery ServicesJiniJini Directory-Related ComponentJini Directory-Related Component (cont’d)Slide 441Internet ProtocolsEach host computer on the network must have a unique (logical) addressScaled up very well to support more sophisticated distributed applicationsIP DefinesA format for assigning addressesAn (unreliable) mechanism for transferring data (datagram)2IP ProtocolProvides an unreliable or best-effort delivery serviceOnly checksum is the header checksum.IP layer Puts IP datagrams into network packets suitable for transmission in the underlying network;E.g., Ethernet.When the datagram is longer than MTU of the underlying network, it is broken into smaller segments and reassembled at the destination.Must insert “physical” network address of the message destination if necessary;Depends on the underlying network technology, i.e., Ethernet requires and Ethernet address for the host on the local Ethernet.3Mobility and IPDynamic Host Configuration Protocol (DHCP)Designed to support the ability of a mobile device to maintain simple access to services;Assigns a temporary IP address to the device.To provide permanent access by clients to a mobile computer it must maintain a permanent IP address.Problem: IP routing is subnet-based.Subnets are at fixed locations.4MobileIPA transparent solution based on tunnelling.When a mobile computer is connected to the Internet elsewhere, two agents take responsibility for routing.Home agent (HA): holds up-to-date knowledge of the mobile host’s current location;The IP address at which it can be reached.The mobile host informs HA upon leaving homeHA acts as a proxy to the clients communicating to the mobile host during this time.5MobileIP (cont’d)Foreign agent (FA):Allocates a temporary IP address to a mobile host upon its arrival to a new site;Contact HA and supplies it with the contact address for the mobile host (FA’s address).HA encapsulates original IP packets and sends them to FA.FA unpacks the packets and delivers them to the mobile host.HA sends the contact address for the mobile host o the original senderIf the sender is Mobile-enabled it communicates to the FA directly from now on;If not, the HA continues to act as a proxy for it.6TCP and UDPProvide communication capabilities to the application programs.IPv6 will support TCP/UDP as well as other connection protocols (remember the Internet Model).Enable interprocess communication through the use of ports attached to applications.Port number is included in the header.7UDPAlmost transport-level replica of IP.Offers no guarantee of delivery.The header is short, but includes an optional checksum for the payload;The packets that fail the check are dropped.8TCPProvides reliable delivery of arbitrary long sequences of bytes via stream-based programming abstraction.Connection-oriented;The sending and the receiving processes establish a communication channel;Use of ACK (acknowledgement) messages).9TCP Reliability MechanismsSequencing: a sequence number is attached to every TCP segment;Used for message re-assembly at the destination.Flow control: overflow prevention;The receiver send an ACK with the highest sequence number in its input stream (no segments before that one have been omitted) and a window size.Window size specifies the amount of data the sender is permitted to send.ACK are attached to the backward flow if there is any.Burstiness of network traffic is smoothed through the use of local buffering an a configurable time-out on it.Naggle’s algorithm.10TCP (cont’d)Due to the unreliability of wireless networks these mechanisms are not efficient.Solutions: WAP and modified TCP.Modified TCP for wireless networks.Implement a TCP support component at the base station (gateway between wired and wireless networks).The support component snoops on TCP packets to and from the wireless network re-transmitting segments that are not promptly acknowledged.Requesting re-transmission of inbound segments when gaps in sequence numbers are noticed.11WAPWireless Application Protocol“An open, global specification that empowers mobile users with wireless devices to easily access and interact with information and services instantly.” - WAP Forum“The de facto worldwide standard for providing Internet communications and advanced telephony services on digital mobile phones, pagers, personal digital assistants and other wireless terminals.” - WAP Forum (www.wapforum.org)12Why is WAP needed?Traditional internet protocols (HTML, HTTP, TCP, etc.) and their security mechanisms (TLS) are inefficient over mobile networks.Handheld devices tend to have less powerful CPUs, less memory and more restrictions on power consumption than desktops, so require special considerations.Handheld devices tend to use input devices other than keyboards (e.g. voice, keypad).13Bearer LimitationsPower consumption increased bandwidth requires increased power.Cellular network economics Fixed bandwidth shared among many users, so efficient bandwidth use required.Latency wide range of network latencies common (< 1 second to 10s of seconds).Bandwidth Less bandwidth than found in wired environments.14WAP Forum: www.wapforum.orgWAP Forum founded in December 1997 by Nokia, Ericsson, Motorola and Phone.com (formerly Unwired Planet)Currently contains over 200 members;Carriers with more than 100 million subscribers;Infrastructure providers;Software developers, and others.Represent over 95% of the global handset market.WAP Protocol developmentCurrent WAP Version: 1.215How does WAP work?Uses client-server
View Full Document