MC Unit I and II Notes

download MC Unit I and II Notes

of 17

Transcript of MC Unit I and II Notes

  • 8/20/2019 MC Unit I and II Notes

    1/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 1

    Mobile Computing

    Unit –  I Introduction

    Mobile Computing  –   Mobile Computing Vs wireless Networking  –   Mobile ComputingApplications  –   Characteristics of Mobile computing  –   Structure of Mobile ComputingApplication. MAC Protocols  –  Wireless MAC Issues  –  Fixed Assignment Schemes  –  RandomAssignment Schemes –  Reservation Based Schemes.

    Unit –  II Mobile Internet Protocol and Transport Layer

    Overview of Mobile IP  –   Features of Mobile IP  –   Key Mechanism in Mobile IP  –   routeOptimization. Overview of TCP/IP  –   Architecture of TCP/IP- Adaptation of TCP Window  –  Improvement in TCP Performance.

    Unit –  III Mobile Telecommunication System

    Global System for Mobile Communication (GSM)  –   General Packet Radio Service(GPRS)  – Universal Mobile Telecommunication System (UMTS)

    Unit –  IV Mobile Ad hoc Networks

    Ad-Hoc Basic Concepts  –  Characteristics  –  Applications  –   Design Issues  –   Routing  –  Essential of Traditional Routing Protocols  – Popular Routing Protocols  –  Vehicular Ad Hocnetworks ( VANET) – MANET Vs VANET –  Security.

    Unit –  V Mobile Platforms and Applications

    Mobile Device Operating Systems –   Special Constrains & Requirements  –   CommercialMobileOperating Systems  –   Software Development Kit: iOS, Android, BlackBerry, WindowsPhone-M-commerece- –   Structure –  Pros & Cons –  Mobile Payment System –  Security Issues.

    References:

    Prasant Kumar Pattnaik, Rajib Mall, ―Fundamentals of Mobile Computing‖, PHI Learning Pvt.Ltd, New Delhi –  2012.

    Jochen H. Schller, ―Mobile Communications‖, Second Edition, Pearson Education, New Delhi,2007.

    Dharma Prakash Agarval, Qing and An Zeng, "Introduction to Wireless and Mobile systems",

    Thomson Asia Pvt Ltd, 2005.

  • 8/20/2019 MC Unit I and II Notes

    2/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 2

    Uwe Hansmann, Lothar Merk, Martin S. Nicklons and Thomas Stober, ―Principles of MobileComputing‖, Springer, 2003.

    William.C.Y.Lee,―Mobile Cellular Telecommunications-Analog and Digital Systems‖, SecondEdition,Tata Mc Graw Hill Edition ,2006.

    C.K.Toh, ―AdHoc Mobile Wireless Networks‖, First Edition, Pearson Education, 2002. 

    Android Developers : http://developer.android.com/index.html 

    Apple Developer : https://developer.apple.com/

    Windows Phone Dev Center : http://developer.windowsphone.com 

    BlackBerry Developer : http://developer.blackberry.com/ 

    http://developer.android.com/index.htmlhttp://developer.android.com/index.htmlhttp://developer.windowsphone.com/http://developer.windowsphone.com/http://developer.blackberry.com/http://developer.blackberry.com/http://developer.blackberry.com/http://developer.blackberry.com/http://developer.windowsphone.com/http://developer.android.com/index.html

  • 8/20/2019 MC Unit I and II Notes

    3/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 3

    Unit –  I Introduction

    1.1 Mobile Computing

    Mobile Computing is a technology that allows transmission of data, voice and video via a

    computer or any other wireless enabled device without having to be connected to a fixed physical link.

    The main concept involves − Mobile communication, Mobile hardware, Mobile software.

    Mobile communication

      The mobile communication refers to the infrastructure put in place to ensure that

    seamless and reliable communication goes on.

      It include devices such as protocols, services, bandwidth, and portals necessary to

    facilitate and support the stated services.

      The data format is also defined at this stage. This ensures that there is no collision with

    other existing systems which offer the same service.

      Since the media is unguided/unbounded, the overlaying infrastructure is basically radio

    wave-oriented. That is, the signals are carried over the air to intended devices that are

    capable of receiving and sending similar kinds of signals.

    Mobile Hardware

      Mobile hardware includes mobile devices or device components that receive or access the

    service of mobility.

      It would range from portable laptops, smartphones, tablet PCs, Personal Digital

    Assistants.

  • 8/20/2019 MC Unit I and II Notes

    4/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 4

    Mobile software

      Mobile software is the actual program that runs on the mobile hardware.

     

    It deals with the characteristics and requirements of mobile applications.

      This is the engine of the mobile device.

      In other terms, it is the operating system of the appliance.

      It is the essential component that operates the mobile device.

      Since portability is the main factor, this type of computing ensures that users are not tied

    or pinned to a single physical location, but are able to operate from anywhere.

      It incorporates all aspects of wireless communications.

    Evolution of communication networks

    i.  Circuit switching network:

    A dedicated channel has to be established before call is made. Channel is reserved

     between two users till the connection is alive.

    ii.  Packet switching network:

     No need to establish the connection initially. Channel is available to use by many

    users.

    iii.  Mobile cellular network:

    It is categorized into various generations such as 1g, 2g, 3g, etc.

  • 8/20/2019 MC Unit I and II Notes

    5/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 5

    1g

      It is the first generation of wireless telephone technology

      Came during 1980 and 1990

      Speed was up to 2.4kbps

     

    Allows voice calls in one country

      Use analog signal

      Advanced mobile phone system (AMPS) was first launched in USA in 1g mobile systems

    Drawbacks:

      Poor voice quality

      Poor battery life

       No security

      Limited capacity

    2g

      It is based on GSM (Global System for Mobile communications)

      Launched in Finland during 1991

      Use digital signals

      Data speed up to 64 kbps

      Features: Enables text messages, picture messages and MMS, better quality and capacity

    Drawbacks:

     

    Requires strong digital signals

       No network coverage, digital signals would weak

      Unable to handle complex data such as video

    2.5g

      It is the technology between 2g and 3g

      It is called 2g cellular technology combined with GPRS (General packet radio service)

    Features:

      Send/receive email messages

     

    Web browsing

      Speed is 64 to 144 kbps

      Camera phones

    3g

  • 8/20/2019 MC Unit I and II Notes

    6/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 6

      During 2000

      Data transmission speed is 144 Kbps to 2 Mbps

    Features:

     

    Faster communication  Send/receive large email messages

      High speed web

      TV streaming/mobile TV

    4g

      Started from late 2000s

      Basic term to describe it is MAGIC. M stands for mobile multimedia, A stands for

    Anytime Anywhere, G stands for Global mobility support, I stands for Integrated

    Wireless solution and C stands for Customized Personal Services.  High QoS and high security

      Provide any kind of service at any time as per user requirements anywhere

    Drawbacks:

      Battery usage is more

      Hard to implement

       Need complicated hardware

      Expensive equipment required to implement next generation network

    5g

      Started from late 2010s

      Complete wireless communication with no limitations

      Supportable to WWWW (wireless WWW)

      Data rate is 1Gbps

    Example mobile devices

    1.  Pager:

     

    Receiver only  Tiny displays

      Used for simple text messages

    2.  Mobile phones:

      Can transmit voice, data

      Used for simple text displays

    3.  PDAs (Personal Digital Assistant):

  • 8/20/2019 MC Unit I and II Notes

    7/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 7

      Has simple graphical displays

      Character recognition

      Simplified www

    4.  Palmtop:

      Tiny keyboard

      Simple versions of standard applications

    5.  Laptop:

      Fully functional

      Standard applications

    1.2 Mobile Computing Vs wireless Networking

    Why we need mobile computing?

      Enable anywhere/anytime connectivity

     

    Bring computer communications to areas without pre-existing infrastructure

      Enable mobility

      Enable new applications

      An exciting new research area

    Mobile computing is defined as the technology that allows transmission of data, voice and video

    via computer or wireless devices. The main advantage of mobile computing is users no need to

    sit in a particular place or location. Mobile computing denotes accessing information and

    services while we are on move. Wireless networking provides basic communication

    infrastructure to make mobile computing possible. Mobile computing is based on wireless

    networking. Wireless networking forms one of the necessary components of mobile computing.

    Wireless networks appear in various forms such as: i) WLANs, ii) mobile cellular networks, iii)

    Personal Area Networks, iv) Adhoc networks.

    Wireless networks appear in two forms such as: i) extension of wired networks with the existing

    wired infrastructure, ii) ad hoc networks also known as MANET (Mobile Ad hoc Networks).

    WSNS (Wireless Sensor Networks) are special type of wireless ad hoc networks.

    Wireless networking Mobile computing Example

    X X Stationary computersX √  Notebook in a hotel√  X Wireless LAN building√  √  PDAs

  • 8/20/2019 MC Unit I and II Notes

    8/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 8

    1.3 Mobile Computing Applications

    Applications of wireless and mobile devices

    1.  Transmission of news, road condition and weather

    2. 

    Personal communication3.  Position via GPS

    4.  Local adhoc network with vehicles to prevent accidents and act as a guidance system

    5.  Vehicle data (train) can be transmitted in advance for maintenance and controls

    6.  Early transmission of patient data to hospital, current status, first diagnosis

    7.  Replacement of fixed infrastructure in case of earthquakes, fire, etc

    8.  Mobile office

    9.  Direct access to customer files stored in a central location

    10. Wireless LANs in buildings

    11. Outdoor internet access

    12. 

    Ad hoc networks for multi user games13. Automatic call forwarding, transmission of actual workspace to current location

    14. Mobile information services such as current special offers, etc.

    Limitations of mobile devices

    1.  Battery backup is low, limited computing power and low quality

    2.   Not efficient keyboard

    3.  Can prove to theft due to its size

    4.  Higher loss rates due to interference

    5. 

    Limited user interfaces and limited memory6.  Higher delays (low downloads for Internet)

    7.  Lower security and simpler active attacking since i) medium is accessible for everyone,

    ii) base station can be simulated and attract calls from mobile phones

    1.4 Characteristics of Mobile computing

    The important characteristics of mobile computing are:

    1.  Ubiquity:

     

    The dictionary meaning of ubiquity is present everywhere.

      In the context of mobile computing, ubiquity means the ability of a user to

     perform computations from anywhere and at anytime.

    2.  Local awareness:

  • 8/20/2019 MC Unit I and II Notes

    9/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 9

      A hand-held device equipped with global positioning system can transparently

     provide information about the current location of a user to a tracking station.

    3.  Adaptation:

     

    It implies the ability of a system to adjust to bandwidth fluctuation withoutinconveniencing the user.

      In mobile computing environment, adaptation is crucial because of intermittent

    disconnections and bandwidth fluctuations that can arise due to a number of

    factors such as handoff, obstacles, environment noise, etc.

    4.  Broadcast:

      Due to this characteristic, mobile computing environment can efficiently deliver

    data simultaneously to hundreds of mobile users.

    5.  Personalization:

      Services in a mobile environment can be easily personalized according to a user‘s profile.

      This is required to let the users easily avail information with their hand held

    devices.

    1.5 Structure of Mobile Computing Application

    Three layered architecture diagram:

  • 8/20/2019 MC Unit I and II Notes

    10/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 10

    1.  Presentation tier:

      The topmost level of a mobile computing application concerns the user interface.

      A good user interface facilitates the users to issue requests and to present the

    results to them meaningfully.

      The programs at this layer run on the client machine.

      This layer usually includes web browsers and customized client programs for

    dissemination of information and for collection of data from the user.

    2.  Application tier:

      This layer has the vital responsibility of making logical decisions and performing

    calculations.

     

    It also moves and processes data between the presentation and data layers.

      It performs the processing of user input, obtaining information and then making

    decisions.

      This layer is implemented using technology like Java, .NET services, cold fusion,

    etc.

      The implementation of this layer and the functionality provided by this layer

    should be database independent.

      This layer of functionalities is usually implemented on a fixed server.

    3.  Data tier:

      It is responsible for providing the basic facilities of data storage, access, and

    manipulation.

      Often this layer contains a database.

      The information is stored and retrieved from this database.

     

    This layer is also implemented on a fixed server.

    1.6 MAC Protocols

    The MAC layer is the "low" part of the second OSI layer, the layer of the "data link". In fact, the

    IEEE divided this layer into two layers "above" is the control layer the logical connection

    (Logical Link Control, LLC) and "down" the control layer, the medium access (MAC).

  • 8/20/2019 MC Unit I and II Notes

    11/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 11

    The MAC layer is the "low" part of the second OSI layer, the layer of the "data link". In fact, the

    IEEE divided this layer into two layers "above" is the control layer the logical connection

    (Logical Link Control, LLC) and "down" the control layer, the medium access (MAC).

    IEEE 802 refers to a family of IEEE standards dealing with LAN and MAN. It includes various

    groups and some of them are active and some of them are inactive. It provides standard for physical and data link layer in OSI model.

    Some of the IEEE standards used for MAC are:

    1.  IEEE 802.3 –  Ethernet2.  IEEE 802.4 –  Token Bus3.  IEEE 802.5 –  Token Ring4.  IEEE 802.11 –  Wireless LAN and Wi-Fi5.  IEEE 802.15 –  Wireless PAN, Bluetooth and Zigbee Technologies

    6. 

    IEEE 802.15.1  –  Wireless PAN or Bluetooth operates under 3 classes: 100 mts, 10 mtsand 1 mt7.  IEEE 802.15.4 –  Zigbee8.  IEEE 802.15.6 –  Body Area networks9.  IEEE 802.15.7 –  Visible light communications10. IEEE 802.16 –  WiMAX (World wide Interoperability for Microwave access)

    For WAN, we have the standard named X.25 by ITU (International Telecommunication Union).

    It relates to the lower three layers. X.25 at the physical layer denotes the specification for

    electrical, mechanical, etc. At data link layer, it covers link access protocol i.e. LAPB (Link

    Access Protocol Balanced) that defines how two devices establish error-free connection. Atnetwork layer, it specifies packet format, routing and multiplexing of transmission between

    communicating devices.

    We are having two categories of network according to the medium it is used namely: i) networks

    that use dedicated link between one node to another, ii) networks that use shared communication

    medium between them.

    When we are using dedicated link between source and destination system, then there is no

     problem. But when we use shared communication medium among multiple systems, the there

    arise lot of issues: i) which device will have control over the shared medium, ii) how much time

    the device will take control over the shared medium, iii) when two or more devices trying to use

    the shared medium at the same time, what is the output?

    MAC protocol will take care of these issues. The major classification of MAC protocols are:

    i.  Random assignment scheme

    ii.  Reservation based scheme

  • 8/20/2019 MC Unit I and II Notes

    12/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 12

    iii.  Fixed assignment scheme

    1.7 Wireless MAC Issues

    MAC Issues

      MAC protocol in wireless channel is much more complex than wired channel.

      A collision detection scheme is much more difficult to implement in a wireless

    environment since collisions are hard to detect by the transmitting nodes.

      In infrastructure-less networks the issue of hidden and exposed terminals make MAC

     protocol inefficient unless special care is taken.

    Hidden terminal problem

    The hidden terminal problem arises when at least three nodes communicate among each other.

    Consider nodes A, B and C. A and B are in same range of medium to communicate. B and C are

    in same range of medium to communicate. Here A can communicate with B, C can communicate

    with B, B can communicate with A and B. Also C cannot be reach from A and A cannot be

    reached from C.

    Consider A and C wants to communicate with B at the same time. Then there is collision occurs.

    Here C does not know A‘s transmission since A is hidden for C and also A does not know C‘stransmission since C is hidden for A. This problem is referred as ‗hidden terminal problem‘. 

    Exposed terminal problem

    The hidden terminal problem arises when at least three nodes communicate among each other.

    Consider nodes A, B and C. A and B are in same range of medium to communicate. B and C are

    in same range of medium to communicate. Here A can communicate with B, C can communicate

    with B, B can communicate with A and B. Also C cannot be reach from A and A cannot be

    reached from C.

  • 8/20/2019 MC Unit I and II Notes

    13/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 13

    MAC protocols usually inhibit transmission when transmission from another terminal is

    detected. Consider another node D comes in the range of C. i.e. D and C are in same range of

    medium to communicate. Now C can able to reach B and D.

    Consider B transmit data to A. During this time, C cannot be transmit to any other node since C

    and B shares the same communication medium or in other words, B and C using same range of

    medium to communicate. Even if node D wants to transmit to node C and it can be received

     properly without any collision, the transmission cannot be happened. This is due to the

    knowledge of C that B is communicating to A. The data transmission from B and A is exposed to

    C and thus the transmission from C and D cannot be occur. This problem is referred as ‗exposedterminal problem‘. 

    1.8 Fixed Assignment Schemes

    The fixed assignment schemes are usually called circuit-switched scheme. In this scheme, the

    resources required for a call are assigned for the entire duration of the call. There are three

    categories for fixed assignment scheme. They are:

    a.  FDMA (Frequency Division Multiple Access)

     b.  TDMA (Time Division Multiple Access)

    c.  CDMA (Code Division Multiple Access)

    a. FDMA (Frequency Division Multiple Access)

    Frequency is defined as the number of cycles per unit time. Usually the time unit referred is in

    terms of seconds. The unit of frequency is Hertz. If we have 2 cycles per second, the frequency is

    2 Hz. The range of frequencies human can hear is 12 to 14 Kilo Hertz.

    Example: FM radios are come under this category. If we want to divide the frequency range of

    20Hz to 120Hz into five divisions, then the frequency division is calculated and divide it by the

    number of channels required. i.e. here frequency division is (120-20 = 100 Hz) / 5 = 20 Hz.

    Hence the partition of the channel according to frequency is 20-40 Hz, 40-60 Hz, 60-80 Hz, 80-

    100 Hz, 100-120 Hz.

  • 8/20/2019 MC Unit I and II Notes

    14/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 14

    The graph is plotted with frequency in y axis and time in x axis for FDMA. The available

     bandwidth of the channel is divided into many narrower frequency bands called channels. Each

    user is allotted for a particular range of frequency. if we want to use full duplex communication,

    then each user is allotted with two different frequencies, one for sending and the other for

    receiving. When a call is undertaken by the user, the frequency used by that user will not be

    allotted for other user. Hence it does not achieve high channel utilization. In the wired telephone

    transmission system, this scheme is used.

    Advantages of FDMA

    • Channel bandwidth is relatively narrow• Simple algorithmically, and from a hardware standpoint • Fairly efficient when the number of stations is small and the traffic is uniformly constant • Capacity increase can be obtained by reducing the  information bit rate and using efficientdigital code

    • No need for network timing • No restriction regarding the type of baseband or type of modulation

    Disadvantages of FDMA

    • If channel is not in use, it sits idle• The presence of guard bands• Maximum bit rate per channel is fixed • Does not differ significantly from analog system 

    b. TDMA (Time Division Multiple Access)

    The graph is plotted with frequency in y axis and time in x axis for TDMA. In TDMA, the same

     physical channel is allotted for different users in different time slot. Each user is allocate to use

    the channel in a round robin fashion. It is easily adapt to transmission of data and voice

    communication. Example: GSM (Global System for Mobile Communications) used this

    technique.

  • 8/20/2019 MC Unit I and II Notes

    15/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 15

    Advantages of TDMA

    • Flexible bit rate • No frequency guard band required •Easy for mobile or base stations to initiate and execute hands off

    • Extended battery life •TDMA installations offer savings in base station equipment, space and maintenance •The most cost-effective technology for upgrading a current analog system to digital

    Disadvantages of TDMA

    • Requires network -wide timing synchronization• Requires signal processing for matched filtering and correlation detection • Demands high peak power on uplink in transient mode 

    • Multipath distortion 

    c. Code Division Multiple Access

    In this technique, the graph is plotted with frequency in y axis and time in x axis and code in z

    axis. Hence all the users can use the same physical medium at the same time. To differentiate

    among them, a special code of signals is used for every user who are using the channel.

    CDMA uses different codes for different users and all are multiplexed over the same physical

    channel. Example: All mobile applications where we use encryption in the sending end and

    decryption in the receiving end come under this type.

    Advantages of CDMA

    •Many users of CDMA use the same frequency, TDD or FDD may be used• No absolute limit on the number of users • Easy addition of more users • Impossible for hackers to decipher the code sent • Better signal quality 

    Disadvantages of CDMA

    • As the number of users increases, the overall quality of service decreases• Self -jamming

  • 8/20/2019 MC Unit I and II Notes

    16/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 16

    1.9 Random Assignment Schemes

    Random assignment schemes are called packet-switched schemes. Here no resource reservation

    is made. The nodes simply start to transmission as soon as they have packet to send.

    The various random access MAC schemes are:

    i.  ALOHA

    ii.  Slotted ALOHA

    iii.  CSMA

    iv.  CSMA/CD

    v.  CSMA/CA

    i. ALOHA: It is the simplest scheme. It is free for all. When a node needs to send, it does so. If a

    frame successfully reaches the destination, then it sends the next frame. It listens for an amount

    of time equal to the maximum round trip delay plus a fixed increment. If it hears an

    acknowledgement, then there is no problem i.e. the packets are reached without any problem.

    Otherwise, it resends after waiting a random amount of time. This type is suitable when small

    number of users send data infrequently.

    ii. Slotted ALOHA: It is similar to ALOHA, the exception is that the time is divided into equal-

    sized slots in which a packet can be sent. Thus, the size of the packet is restricted. The slotted

    ALOHA system employs beacon signals that are sent at precise intervals that mark the beginning

    of a slot, at which point the nodes having data to send can start to transmit. This scheme also

    does not work well when the number of stations used to send data is high.

    iii. CSMA: CSMA stands for Carrier Sense Multiple Access. Every node attached to the systemthat implements CSMA is capable of sensing whether the communication medium is free to

    transmit or not. Hence this scheme is called LBT (Listen Before Talking) i.e. the node senses the

    medium before starting to transmit. If the node senses that some transmission is going on, then it

    will not start its transmission.

    iv. CSMA/CD: CSMA/CD stands for Carrier Sense Multiple Access with Collision Detection. In

    this scheme, the sender starts to transmit if it senses the channel to be free. Even if it senses the

    channel to be free, there can be a collision during transmission. This can be happens when two or

    more nodes start sending the data at the same time. After sending data, node will sense whether

    there is any collision. If there is any collision, then it will stop its transmission. Hence it is alsocalled LAT (Listen After Talking).

    v. CSMA/CA: CSMA/CA stands for Carrier Sense Multiple Access with Collision Avoidance.

    There are a multiple number of nodes want to transmit data at the same time whenever the

    channel is free to transmit. But more than two systems want to use the shared communication

    channel, then there will be a collision and hence the receiver cannot able to receive proper data.

  • 8/20/2019 MC Unit I and II Notes

    17/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 17

    To avoid this occurrence of collision, in this scheme, every node will follow a random amount of

    time delay to sense the channel is free or not after a particular wait time while checking for the

    channel to be free. Hence this scheme is called as collision avoidance.

    1.10 Reservation Based Schemes

    Reservation based schemes are also known as packet-switched schemes. In this scheme, a node

    makes explicit reservation of the channel for an entire call before transmitting. Hence it is

    suitable for handling calls with widely varying traffic characteristics.

    The basic form of the reservation scheme is the RTS/CTS scheme. In RTS/CTS scheme, a sender

    transmits an RTS (Request To Send) packet to the receiver before the actual data transmission.

    On receiving, the receiver sends a CTS (Clear To Send) packet and the actual data transfer will

    commence only after that process.

    A node wants to send a message first reserves the medium by using appropriate control message

    (RTS) and the corresponding destination node accepting this request answers with a control

    message to the sender (CTS). Every other nodes which senses these control messages in the

    network will not perform data transmission. One of the examples of RTS-CTS based MAC

     protocols is MACA.

    MACA

    MACA stands for Multiple Access Collision Avoidance. It solves the hidden and exposed

    terminal problems. A node running MACA requests to use the medium by sending RTS to

    receiver.

    Consider three systems A, B and C such that A and B are in same communication range, B and C

    are in same communication range. Similarly A can reach only to B, C can reach only to B, B can

    reach to A and B.

    Solution to Hidden terminal problem

    The steps to be followed under MACA to avoid hidden terminal problem are:

    i.  A sends RTS (with some information) to B

    ii.  B receives RTS that contains sender‘s name, receiver‘s name (here it is A and B) and

    the length of future transmission.iii.  CTS is sent to A and C which contains sender‘s name, receiver‘s name (here it is A

    and B) and the length of transmission.

    iv.  C understood now that B is sending CTS to A. Hence C will not start its transmission

    for the time given in CTS.

    v.  Collision cannot occur for the time mentioned in CTS.

  • 8/20/2019 MC Unit I and II Notes

    18/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 18

    Thus here hidden terminal problem is solved. But collision can occur during the sending of RTS.

    i.e. A and C send RTS to B at the same time. In this case, B can resolve this problem by

    acknowledging only for one station with CTS. No transmission will occur without an appropriate

    CTS.

    Solution to Exposed terminal problem

    The steps to be followed under MACA to avoid exposed terminal problem are:

    i.  B needs to transmit to A and thus transmit RTS to A and C.

    ii.  RTS contains name of the sender and receiver, length of data transmission in time.

    iii.  C does not response to this RTS since it represents A only in the RTS message. But A

    will respond with CTS to B.

    iv.  C does not receive this CTS, and conclude that A is outside the detection range.

    v.  C can start its transmission assuming that no collision would occur at A.

    Here exposed terminal problem is solved.

  • 8/20/2019 MC Unit I and II Notes

    19/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 19

    Unit –  II Mobile Internet Protocol and Transport Layer

    2.1 Overview of Mobile IP

    Mobile IP (Internet Protocol) enables the transfer of information to and from mobile computers,

    such as laptops and wireless communications. The mobile computer can change its location to a

    foreign network and still access and communicate with and through the mobile computer's home

    network. 

    When a mobile node moves from one network to another, it has to reconfigure its IP according to

    the new network. It is a complicated task. i.e. whenever the mobile node moves, it has to

    reconfigure its IP address according to the newer network it is added now. If it is done, then it

    may lose its connectivity to the already existing network connection. To solve this issue, we have

    to use mobile IP.

    Mobile IP uses two IP addresses: i) fixed home address, ii) care-of address. Mobile IP enables

    computer to roam freely on the Internet or organization‘s network while maintaining the samehome address.

    Figure: Mobile IP Topology

      Using Mobile IP topology, the following scenario shows how a datagram moves from

    one point to another within the Mobile IP framework.

    1.  The Internet host sends a datagram to the mobile node using the mobile node's home

    address (normal IP routing process).

  • 8/20/2019 MC Unit I and II Notes

    20/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 20

    2.  If the mobile node is on its home network, the datagram is delivered through the normal

    IP process to the mobile node. Otherwise, the home agent picks up the datagram.

    3.  If the mobile node is on a foreign network, the home agent forwards the datagram to the

    foreign agent.

    4.  The foreign agent delivers the datagram to the mobile node.

    5.  Datagrams from the mobile node to the Internet host are sent using normal IP routing

     procedures.

    6.  If the mobile node is on a foreign network, the packets are delivered to the foreign agent.

    The foreign agent forwards the datagram to the Internet host.

    Mobile IP Functional Entities

    Mobile IP introduces the following new functional entities:

    1.  Mobile Node (MN) – Host or router that changes its point of attachment from one

    network to another.

    2.  Home Agent (HA) – Router on a mobile node's home network that intercepts datagrams

    destined for the mobile node, and delivers them through the care-of address. The home

    agent also maintains current location information for the mobile node.

    3.  Foreign Agent (FA) – Router on a mobile node's visited network that provides routingservices to the mobile node while the mobile node is registered.

    How Mobile IP Works

      Mobile IP enables routing of IP datagrams to mobile nodes.

      The mobile node's home address always identifies the mobile node, regardless of its

    current point of attachment to the Internet or an organization's network.

      When away from home, a care-of address associates the mobile node with its home

    address by providing information about the mobile node's current point of attachment to

    the Internet or an organization's network.

      Mobile IP uses a registration mechanism to register the care-of address with a home

    agent.

  • 8/20/2019 MC Unit I and II Notes

    21/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 21

      The home agent redirects datagrams from the home network to the care-of address by

    constructing a new IP header that contains the mobile node's care-of address as the

    destination IP address.

      This new header then encapsulates the original IP datagram, causing the mobile node's

    home address to have no effect on the encapsulated datagram's routing until it arrives atthe care-of address.

      This type of encapsulation is also called tunneling. After arriving at the care-of address,

    each datagram is de-encapsulated and then delivered to the mobile node.

    Consider a mobile node is currently in network A, it has its associated network IP address. The

    network is called home network. If the mobile node changes its position to any other network,

    this new network is called foreign network and to get the connectivity to the new network, the

    mobile node should be associated with new network‘s associated IP address. If we change the

    mobile node‘s IP address according to the new network position, then it will lose its previousconnectivity. To solve these problems, mobile IP is used for mobile nodes. According to themobile IP, each mobile node is associated with a pair of IP address namely: i) home address and

    ii) care-of-address.

    Mobile IP agents

    Mobile IP agents are routers that have been given additional programming to make them

    ―Mobile IP aware‖. The communication between a mobile node and the agent on its localnetwork is basically the same as the normal communication required between a device on an IP

    network and its local router, except more information needs to be sent when the router is an

    agent. The router in the home network called home agent and the router in the foreign network

    called foreign agent are commonly called mobile IP agents. These home and foreign agents are

    used to route the packets for mobile node.

    Care-of address

    There are two types of care-of addresses. They are:

    i.  Foreign agent care-of address: When the mobile node is in foreign network

    and if the mobile node is not having its own IP address, then it should use IP

    address of the foreign agent itself. Thus foreign agent‘s IP address is used as acare-of address for mobile node. This type of care-of address is called foreignagent care-of address. In this case, the mobile node is connected to the foreign

    agent using the layer 2 protocol only. Any packets routing from home agent

    will reach the foreign agent, then from foreign agent, it uses layer 2 protocol

    to reach the mobile node. Consider the figure below for example.

  • 8/20/2019 MC Unit I and II Notes

    22/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 22

    ii.  Co-located care-of address: When the mobile node has its own IP address in

    its foreign network, this address is referred as co-located care-of address. Any

     packet to be routed to the mobile node in the foreign network, then it will be

    routed to the mobile node‘s co-located care-of address. The mobile node canobtain this address by two methods: i) manually by enquiring the admin to

     provide IP, ii) using DHCP protocol. Consider the figure below for example.

  • 8/20/2019 MC Unit I and II Notes

    23/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 23

    2.2 Features of Mobile IP

    1. Transparency:

     

    During its movement mobile end system‘s communication should not be disrupted. 

      The IP address is to be managed transparently and there should not be effect of mobility

    on any ongoing communication.

    2. Compatibility:

      Mobile IP should be compatible with the existing Internet protocols.

    3. Security:

     

    Mobile IP should as far as possible, provide users with secure communications overInternet.

    4. Efficiency and Scalability:

      There can be a large number of mobile systems in the whole Internet.

      This should be results in large number of messages or it should not incur too much

    computational overhead.

      It should also be scalable to support billions of moving hosts worldwide.

    2.3 Key Mechanism in Mobile IP

    Agent discovery

    When a mobile node is first turned on, it cannot assume that it is still ―at home‖ the way normalIP devices do. It must first determine where it is, and if it is not at home, begin the process of

    setting up datagram forwarding from its home network. This process is accomplished by

    communicating with a local router serving as an agent, through the process called agent

    discovery.

    The main goals of agent discovery include the following:

    o  Agent/Node Communication: Agent discovery is the method by which a mobile node

    first establishes contact with an agent on the local network to which it is attached.

  • 8/20/2019 MC Unit I and II Notes

    24/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 24

    i.  Messages are sent from the agent to the node containing important

    information about the agent. These messages are called agent advertisement

    messages.

    ii.  A message can also be sent from the node to the agent asking for this

    information to be sent. This message is called agent solicitation message (i.e.request for agent advertisement).

    o  Orientation:  The node uses the agent discovery process to determine where it is.

    Specifically, it learns whether it is on its home network or a foreign network by

    identifying the agent that sends it messages.

    o  Care-Of Address Assignment: The agent discovery process is the method used to tell a

    mobile node the care-of address it should use, when foreign agent care-of addressing is

    used.

    The messages used in the agent discovery process are:

    o  Agent Advertisement:   This is a message transmitted regularly by a router acting as a

    Mobile IP agent. It consists of a regular  Router Advertisement  message that has one or

    more extensions added that contain Mobile-IP-specific information for mobile nodes.

    o  Agent Soli citation:   This message can be sent by a mobile IP device to nudge a local

    agent to send an Agent Advertisement .

    Agent Registration

    Once a mobile node has completed agent discovery, it knows whether it is on its home networkor a foreign network. If on its home network it communicates as a regular IP device, but if on a

    foreign network it must activate Mobile IP. This requires that it communicate with its home

    agent so information and instructions can be exchanged between the two. This process is called

    home agent registration, or more simply, just registration.

    The main purpose of registration is to actually start Mobile IP working. The mobile node must

    contact the home agent and tell it that it is on a foreign network and request that datagram

    forwarding be turned on. It also must let the home agent know its care-of address so the home

    agent knows where to send the forwarded datagrams. The home agent in turn needs to

    communicate various types of information back to the mobile node when registration is performed. Note that the foreign agent is not really involved in registration, except perhaps to

    relay messages, as we will see.

    Mobile Node Registration Events  

    Successful registration establishes what is called in the standard a mobility binding   between a

    home agent and a mobile node. For the duration of the registration, the mobile node's regular

  • 8/20/2019 MC Unit I and II Notes

    25/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 25

    home address is tied to its current care-of address and the home agent will encapsulate and

    forward datagrams addressed to the home address over to the care-of address. The mobile node is

    supposed to manage its registration and handle various events using several actions:

    o  Registration: The mobile node initiates a registration when it first detects it has moved

    from its home network to a foreign network.

    o  Deregistration:  When the mobile node returns home, it should tell the home agent to

    cancel forwarding, a process called deregistration.

    o  Reregistration: If the mobile node moves from one foreign network to another, or if its

    care-of address changes, it must update its registration with the home agent. It also must

    do so if its current registration is about to expire, even if it remains stationary on one

    foreign network.

    Each registration is established only for a specific length of time, which is why regular

    reregistration is required whether the device moves or not. Registrations are time-limited to

    ensure that they do not become stale. If, for example, a node forgets to de-register when it returns

    home, the datagram forwarding will eventually stop when the registration expires.

    Mobile IP Data encapsulation and Tunneling

    Once a mobile node on a foreign network has completed a successful registration with its home

    agent, the Mobile IP datagram forwarding process will be fully ―activated‖. The home agent willintercept datagrams intended for the mobile node as they are routed to its home network, and

    forward them to the mobile node. This is done by encapsulating  the datagrams and then sending

    them to the node's care-of address.

    Mobile IP Data Encapsulation Techniques 

    Encapsulation is required because each datagram we intercept and forward needs to be resent

    over the network to the device's care-of address. The default encapsulation process used in

    Mobile IP is called IP Encapsulation Within IP , defined in RFC 2003 and commonly abbreviated

     IP-in-IP . It is a relatively simple method that describes how to take an IP datagram and make it

    the payload of another IP datagram. In Mobile IP, the new headers specify how to send the

    encapsulated datagram to the mobile node's care-of address.

    In addition to IP-in-IP, two other encapsulation methods may be optionally used:  Minimal Encapsulation Within IP , defined in RFC 2004, and Generic Routing Encapsulation (GRE),

    defined in RFC 1701.

    The Mobile IP Data Delivery Tunnel 

    The encapsulation process creates a logical construct called a tunnel   between the device that

    encapsulates and the one that decapsulates. This is the same idea of a tunnel used in discussions

  • 8/20/2019 MC Unit I and II Notes

    26/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 26

    of virtual private networks (VPNs), IPSec tunnel mode, or the various other tunneling protocols

    used for security.

    The tunnel represents a conduit over which datagrams are forwarded across an arbitrary

    internetwork, with the details of the encapsulated datagram (meaning the original IP headers)

    temporarily hidden.

    In Mobile IP, the start of the tunnel is the home agent, which does the encapsulation. The end of

    the tunnel depends on what sort of care-of address is being used:

    o  Foreign Agent Care-Of Address: The foreign agent is the end of the tunnel. It receives

    encapsulated messages from the home agent, strips off the outer IP header and then

    delivers the datagram to the mobile node. This is generally done using layer two, because

    the mobile node and foreign agent are on the same local network, and of course, the

    mobile node does not have its own IP address on that network (it is using that of the

    foreign agent.)

    o  Co-Located Care-Of Address: The mobile node itself is the end of the tunnel and strips

    off the outer header.

    Key mechanisms in mobile IP

    Mobile IP is associated with the following three basic mechanisms:

    i.  Discovering the care-of address

    ii.  Registering the care-of address

    iii.  Tunneling to the care-of address

    i. Discovering the care-of address

    Each mobile node uses a discovery protocol to identify the respective home and foreign agents.

    The discovery of the care-of address consists of the following steps:

  • 8/20/2019 MC Unit I and II Notes

    27/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 27

    a.  Mobile agents advertise their presence by periodically broadcasting the

    agent advertisement messages.

     b.  The mobile node receiving the agent advertisement message observes

    whether the message is from its own home agent and determines whether

    it is on the home network or on a foreign network.

    c. 

    If a mobile node does not wish to wait for the periodic advertisement, it

    can send out agent solicitation messages that will be responded to by a

    mobility agent.

    Agent advertisement involves the following activities:

    a.  Foreign agents send messages to advertise the available care-of addresses.

     b.  Home agents send advertisements to make themselves known.

    c.  Mobile hosts can issue solicitations to actively seek information.

    d.  If a mobile host has not heard from the foreign agent to which its current care-of address

     belongs, it takes up another care-of address.

    ii. Registering the care-of address

    If the mobile node discovers that it is on the home network, it operates in a normal IP routing

     process. If the mobile node is in foreign network, then it had to register the care-of address of the

    mobile node to the home agent and then only the home agent can able to redirect the packets

    which are coming for mobile node to the home agent.

    The registration process consists of the following steps:

    a. 

    If the mobile node is on the foreign network, it registers with the foreign agent bysending a registration request message which includes the permanent IP address of the

    mobile host and the IP address of its home agent.

     b.  The FA (foreign agent) send the registration request containing the permanent IP address

    of the mobile node and the IP address of the foreign agent to the home agent.

    c.  When the HA (home agent) receives the registration request, it updates the mobility

     binding by associating the care-of address of the mobile node with its home address. The

    HA then sends an acknowledgement to the FA.

    d.  The FA in turn updates its visitors list by inserting the entry for the mobile node and

    relays the reply to the mobile node.

  • 8/20/2019 MC Unit I and II Notes

    28/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 28

    iii. Tunneling to the care-of address

    In computer networks, a tunneling protocol  allows a network user to access or provide a

    network service that the underlying network does not support or provide directly. One important

    use of a tunneling protocol is to allow a foreign protocol to run over a network that does notsupport that particular protocol; for example, running IPv6 over IPv4. Simply, tunneling is a

    technology that enables one network to send its data via another network‘s connections. 

    Tunneling takes place to forward the datagram from the HA to the mobile node. The packets are

    coming from the remote host to the mobile node. if the mobile node is in home network, then it

    will follow the normal IP routing process. If the mobile node is in foreign network, then the

     packets or datagrams from the remote host will reach to the HA, where it will tunnel the packets

    to the foreign network. The tunneling is of two ways:

    1.  If the mobile node follows co-located care-of address, then the tunneling path is from

    HA to the mobile node. Thus the packets are routed through the tunnel from HA to

    the mobile node directly.

    2.  If the mobile node follows FA care-of address, then the tunneling path is from HA to

    the FA. Thus the packets from HA will tunnel from HA to FA and from the FA, it

  • 8/20/2019 MC Unit I and II Notes

    29/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 29

    will follows the Layer2 protocol to reach the mobile agent. Here tunneling can be

    done from HA to FA only.

    The steps involved in tunneling process are:

    a. 

    When a HA receives a packet addressed to a mobile host, it forwards the packet to thecare-of address using IP-within-IP.

     b.  Using IP-within-IP, the HA inserts new IP header in front of the IP header of any

    datagram.

    c.  Destination address is set to the care-of-address.

    d.  Source address is set to the HA‘s address. e.  After stripping out the first header, IP processes the packet again.

    Overview and Architecture of TCP/IP

    OSI Reference Model

      Most network protocol suites are viewed as structured in layers.

      This is a result of the Open Systems Interconnect (OSI) Reference Model designed by the

    International Standards Organization (ISO).

      The OSI model describes network activities as having a structure of seven layers, each of

    which has one or more protocols associated with it.

     

    The layers represent data transfer operations common to all types of data transfers amongcooperating networks.

      The protocol layers of the OSI Reference Model are traditionally listed from the top

    (layer 7) to the bottom (layer 1) up, as shown in the following table.

     

    The operations defined by the OSI model are conceptual and not unique to any particular

    network protocol suite.

      For example, the OSI network protocol suite implements all seven layers of the OSI

    Reference Model.

      TCP/IP uses some of OSI model layers and combines others. Other network protocols,

    such as SNA, add an eighth layer.

    Table: The Open Systems Interconnect Reference Model

  • 8/20/2019 MC Unit I and II Notes

    30/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 30

    Layer

    No. Layer Name Description

    7 Application Consists of standard communication services and applications

    that everyone can use

    6 Presentation Ensures that information is delivered to the receiving machine

    in a form that it can understand

    5 Session Manages the connections and terminations between

    cooperating computers

    4 Transport Manages the transfer of data and assures that received and

    transmitted data are identical

    3 Network Manages data addressing and delivery between networks

    2 Data Link Handles the transfer of data across the network media

    1 Physical Defines the characteristics of the network hardware

    TCP/IP Protocol Architecture Model

      The OSI model describes an idealized network communications protocol family.

      TCP/IP does not correspond to this model directly, as it either combines several OSI

    layers into a single layer, or does not use certain layers at all.

     

    The following table shows the layers of TCP/IP, listed from topmost layer (application)

    to lowest (physical network).

      The table shows the TCP/IP protocol layers, their OSI Model equivalents, and examples

    of the protocols available at each level of the TCP/IP protocol stack.

  • 8/20/2019 MC Unit I and II Notes

    31/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 31

      Each host involved in a communication transaction runs its own implementation of the

     protocol stack.

    Table: TCP/IP Protocol Stack

    OSI Ref.

    Layer No.

    OSI Layer

    Equivalent

    TCP/IP

    Layer TCP/IP Protocol Examples

    5,6,7 Application, Session,

    Presentation

    Application NFS, NIS+, DNS, telnet, ftp, rlogin,

    rsh, rcp, RIP, RDISC, SNMP, and

    others

    4 Transport Transport TCP, UDP

    3 Network Internet IP, ARP, ICMP

    2 Data Link Data Link PPP, IEEE 802.2

    1 Physical Physical

     Network

    Ethernet (IEEE 802.3) Token Ring,

    RS-232, others

    Physical Network Layer

      The physical network layer specifies the characteristics of the hardware to be used for the

    network.

     

    For example, it specifies the physical characteristics of the communications media.

      The physical layer of TCP/IP describes hardware standards such as IEEE 802.3, the

    specification for Ethernet network media, and RS-232, the specification for standard pin

    connectors.

  • 8/20/2019 MC Unit I and II Notes

    32/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 32

    Data-Link Layer

      The data-link layer identifies the network protocol type of the packet, in this case TCP/IP.

      It also provides error control and "framing."

     

    Examples of data-link layer protocols are Ethernet IEEE 802.2 framing and Point-to-

    Point Protocol (PPP) framing.

    Internet Layer

      This layer, also known as the network layer, accepts and delivers packets for the network.

      It includes the powerful Internet protocol (IP), the Address Resolution Protocol (ARP)

     protocol, Reverse Address Resolution Protocol (RARP), Internet Group Message

    Protocol (IGMP), and the Internet Control Message Protocol (ICMP) protocol.

    IP Protocol

    The IP protocol and its associated routing protocols are possibly the most significant of the entire

    TCP/IP suite. IP is responsible for:

      IP addressing - The IP addressing conventions are part of the IP protocol.

      Host-to-host communications - IP determines the path a packet must take, based on the

    receiving host's IP address.

      Packet formatting - IP assembles packets into units known as IP datagrams.

      Fragmentation - If a packet is too large for transmission over the network media, IP on

    the sending host breaks the packet into smaller fragments. IP on the receiving host then

    reconstructs the fragments into the original packet.

    ARP Protocol

      The Address Resolution Protocol (ARP) conceptually exists between the data link and

    Internet layers.

      ARP assists IP in directing datagrams to the appropriate receiving host by mapping

    Ethernet addresses (48 bits long) to known IP addresses (32 bits long).

    RARP protocol

    It is used by IP to find the IP address based on the physical address of a computer. The operation

    is reverse process of the ARP protocol.

  • 8/20/2019 MC Unit I and II Notes

    33/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 33

    ICMP Protocol

    Internet Control Message Protocol (ICMP) is the protocol responsible for detecting network error

    conditions and reporting on them. ICMP reports on:

     

    Dropped packets (when packets are arriving too fast to be processed)

      Connectivity failure (when a destination host can't be reached)

      Redirection (which tells a sending host to use another router)

    Transport Layer

      The TCP/IP transport layer protocols ensure that packets arrive in sequence and without

    error, by swapping acknowledgments of data reception, and retransmitting lost packets.

      This type of communication is known as "end-to-end." Transport layer protocols at this

    level are Transmission Control Protocol (TCP) and User Datagram Protocol (UDP).

    TCP Protocol

      TCP enables applications to communicate with each other as though connected by a

     physical circuit.

      TCP sends data in a form that appears to be transmitted in a character-by-character

    fashion, rather than as discreet packets.

      This transmission consists of a starting point, which opens the connection, the entire

    transmission in byte order, and an ending point, which closes the connection.

      TCP attaches a header onto the transmitted data. This header contains a large number of

     parameters that help processes on the sending machine connect to peer processes on the

    receiving machine.

      TCP confirms that a packet has reached its destination by establishing an end-to-end

    connection between sending and receiving hosts.

     

    TCP is therefore considered a "reliable, connection-oriented" protocol.

    UDP Protocol

      UDP, the other transport layer protocol, provides datagram delivery service.

      It does not provide any means of verifying that connection was ever achieved between

    receiving and sending hosts. Because UDP eliminates the processes of establishing and

  • 8/20/2019 MC Unit I and II Notes

    34/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 34

    verifying connections, applications that send small amounts of data use it rather than

    TCP.

    Application Layer

     

    The application layer defines standard Internet services and network applications thatanyone can use. These services work with the transport layer to send and receive data.

      There are many applications layer protocols, some of which you probably already use.

      Some of the protocols include:

    1. 

    Standard TCP/IP services such as the ftp, tftp, and telnet commands

    2.  UNIX "r" commands, such as rlogin and rsh

    3.   Name services, such as NIS+ and Domain Name System (DNS)

    4.  File services, such as the NFS service

    5.  Simple Network Management Protocol (SNMP), which enables network management

    6.  RIP and other routing protocols

    Adaptation of TCP Window

    TCP window

      TCP is a connection-oriented protocol; both ends of a connection keep strict track of all

    data transmitted, so that any lost or jumbled segments can be retransmitted or reordered

    as necessary to maintain reliable transport.

      To compensate for limited buffer space (where received data is temporarily stored until

    the appropriate application can process it), TCP hosts agree to limit the amount of

    unacknowledged data that can be in transit at any given time.

      This is referred to as the window size, and is communicated via a 16-bit field in the TCP

    header.

      Suppose we have two hosts, A and B, that form a TCP connection.

      At the start of the connection, both hosts allocate 32 KB of buffer space for incoming

    data, so the initial window size for each is 32,768.

  • 8/20/2019 MC Unit I and II Notes

    35/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 35

      Host A needs to send data to host B. It can tell from host B's advertised window size that

    it can transmit up to 32,768 bytes of data (in intervals of the maximum segment size, or

    MSS) before it must pause and wait for an acknowledgment.

      Assuming an MSS of 1460 bytes, host A can transmit 22 segments before exhausting

    host B's receive window.

      When acknowledging receipt of the data sent by host A, host B can adjust its window

    size.

      For example, if the upper-layer application has only processed half of the buffer, host B

    would lower its window size to 16 KB.

  • 8/20/2019 MC Unit I and II Notes

    36/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 36

      If the buffer was still entirely full, host B would set its window size to zero, indicating

    that it cannot yet accept more data.

      On a LAN with high bandwidth and extremely low delay, windows are rarely stressed as

    there are typically very few segments in transit between two endpoints at any given time.

      On a high-bandwidth, high-delay network, however, an interesting phenomenon occurs:

    it is possible to max out the receive window of the destination host before receiving an

    acknowledgment.

      As an example, let's assume a TCP connection is established between two hosts

    connected by a dedicated 10 Mbps path with a one-way delay of 80ms.

      Both hosts advertise the maximum window size of 65,535 bytes (the maximum value of a

    16-bit unsigned integer).

     

    We can calculate the potential amount of data in transit in one direction at one point intime as bandwidth * delay: 10,000,000 bps divided by 8 bits per byte, multiplied by 0.08

    seconds equals 100,000 bytes.

      In other words, if host A begins transmitting to host B continuously, it will have sent

    100,000 bytes before host B receives the first byte transmitted.

  • 8/20/2019 MC Unit I and II Notes

    37/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 37

      However, because our maximum receive window is only 65,535 bytes, host A must stop

    transmitting once this number has been reached and wait for an acknowledgment from

    host B.

    2.8 Improvement in TCP Performance

    Congestion in a network may occur if the load on the network i.e. the number of packets sent to

    the network is greater than the capacity of the network i.e. the number of packets a network can

    handle.

    Congestion control refers to the mechanisms and techniques to control the congestion and keeps

    the load below the capacity.

    Congestion

      Congestion in a network occurs because routers and switches have queues-buffers that

    hold the packets before and after processing.

      A router for example, has an input queue and an output queue for each interface. When a

     packet arrives at the incoming interface, it undergoes three steps before departing as:

    i.  The packet is put at the end of the input queue while waiting to be checked.

    ii.  The processing module of the router removes the packet from the input queue once it

    reaches the front of the queue and uses its routing table and the destination address to

    find the route.

    iii. 

    The packet is put in the appropriate output queue and waits its turn to be send.

      There are 2 issues: i) if the rate of packet arrival is higher than the packet processing rate,

    the input queues become longer and longer, ii) if the packet departure rate is less than the

     packet processing rate, the output queues become longer and longer.

      TCP uses a sliding window to handle flow control.

  • 8/20/2019 MC Unit I and II Notes

    38/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 38

      The sliding window of TCP is byte-oriented and is of variable size.

      The window spans a portion of the buffer containing bytes received from the process.

      The bytes inside the window are the bytes that can be in transit i.e. they can be sent

    without worrying about acknowledgement.

      The imaginary window has two walls named right and left.

      The window is opened, closed or shrunk.

      Opening a window means moving the right wall to the right. This allows more new bytes

    in the buffer that are eligible for sending.

      Closing the window means moving the left wall to right. This means that some bytes

    have been acknowledged and the sender need not worry about them.

      Shrinking the window means moving right wall to left. This should not be allowed since

    it revoke the eligibility of some bytes for sending. The left wall is also cannot be moved

    to left since that number of acknowledgement received already.

      The size of the window at one end is determined by two values: receiver window (rwnd)

    and the congestion window (cwnd).

      The receiver window is the value advertised by the other end in a segment containing

    acknowledgement. i.e. TCP segment header contains a field as window size.

     

    In that field the receiver can set the number of bytes it can accept before its bufferoverflows. Congestion window value is determined by the network to avoid congestion.

    Improvement in TCP performance for Traditional Networks

  • 8/20/2019 MC Unit I and II Notes

    39/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 39

    TCP‘s policy for handling congestion is based on three phases:

    i.  Slow start: Sender starts with very slow rate of transmission, increases the rate rapidly

    to reach a threshold.

    ii. 

    Congestion avoidance: When the threshold is reached, the data rate is reduced toavoid congestion.

    iii.  Congestion detection: If congestion is detected, sender goes back to the slow-start or

    congestion avoidance phase. Thus the congestion is detected.

    1. Slow start –  Exponential increase:

      Slow start is one of the algorithms used in TCP congestion control.

      It is based on the idea that the size of the cwnd starts with one maximum segment size

    (MSS). This means that the sender can send only one segment.

      After receipt of the acknowledgement for segment 1, the size of the congestion window is

    increased by 1, i.e. cwnd is now 2.

       Now two segments can be sent. When each acknowledgement is received, the size of the

    window is increased by 1 MSS.

      When all seven segments are acknowledged, cwnd = 8.

  • 8/20/2019 MC Unit I and II Notes

    40/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 40

    If we look at the size of cwnd in terms of rounds, we find that the rate is exponential as shown

     below:

    Initially, cwnd = 1

    After round1, cwnd = 21 = 2

    After round2, cwnd = 22 = 4

    After round3, cwnd = 23 = 8

      Slow start cannot continue indefinitely.

     

    There must be a threshold to stop this phase.

      The sender keeps track of a variable named ssthresh (slow-start threshold).

      When the size of window in bytes reaches this threshold, slow start stops and the next

     phase starts.

      In most implementations the value of ssthresh is 65,535 bytes.

  • 8/20/2019 MC Unit I and II Notes

    41/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 41

    2. Congestion avoidance –  Additive increase:

      If we start with the slow-start algorithm, the size of the congestion window increases

    exponentially.

     

    To avoid congestion before it happens, we have to slow down this exponential growth.

      TCP defines another algorithm called congestion avoidance, which undergoes an additive

    increase instead of an exponential one.

      When the size of the congestion window reaches the slow-start threshold, the slow-start

     phase stops and the additive phase begins.

      In this algorithm, each time the whole window of segments is acknowledged, the size of

    the congestion window is increased by 1. It is shown in figure below.

      In this case, after the sender has received acknowledgements for a complete window size

    of segments, the size of the window is increased by one segment.

  • 8/20/2019 MC Unit I and II Notes

    42/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 42

      If we look at the size of cwnd in terms of rounds, we find that the rate is additive as

    shown below:

    Initially, cwnd = 1

    After round1, cwnd = 1+1 = 2

    After round2, cwnd = 2+1 = 3

    After round3, cwnd = 3+1 = 4

    3. Congestion detection –  Multiplicative decrease:

      If congestion occurs, the congestion window size must be decreased.

     

    The only way the sender can guess that congestion has occurred is by the need toretransmit a segment. However, retransmission can occur in one of the two cases: i) when

    a timer times out, ii) when three ACKs are received.

      In both the cases, the size of the threshold is dropped to one-half, a multiplicative

    decrease.

      If a time out occurs, there is a strong possibility of congestion, a segment has probably

     been dropped in the network, and there is no news about the sent segments.

      The steps taken are:

    a.  The value of threshold is set to one-half of the current window size.

     b.  cwnd is set to the size of one segment.

    c.  Starts the slow-start phase again.

      If three ACKs are received, there is a weaker possibility of congestion, a segment may

    have been dropped, but some segments after that may have arrived safely since three

    ACKs are received.

     

    This is called fast retransmission and fast recovery. The steps taken are:

    a.  The value of threshold is set to one-half of the current window size.

     b.  cwnd is set to the size of one segment.

    c.  Starts the congestion avoidance phase.

  • 8/20/2019 MC Unit I and II Notes

    43/44

    Prepared by: Dr.A.Neela Madheswari, Asso Prof/CSE, MEC Page 43

    When we receive three ACKs in TCP?

      Every time data packet arrives at the receiving side, the receiver responds with an

    acknowledgment, even if this sequence number has already been acknowledged.

      Thus, when a packet arrives out of order  — that is, TCP cannot yet acknowledge the datathe packet contains because earlier data has not yet arrived — TCP resends the sameacknowledgment it sent the last time. This second transmission of the same

    acknowledgment is called a duplicate ACK .

      When the sending side sees a duplicate ACK, it knows that the other side must have

    received a packet out of order, which suggests that an earlier packet might have been lost.

      Since it is also possible that the earlier packet has only been delayed rather than lost, the

    sender waits until it sees some number of duplicate ACKs and then retransmits the

    missing packet.

      In practice, TCP waits until it has seen three duplicate ACKs before retransmitting the

     packet. It is shown in figure below.

  • 8/20/2019 MC Unit I and II Notes

    44/44

      In this example, the destination receives packets 1 and 2, but packet 3 is lost in the

    network.

      Thus, the destination will send a duplicate ACK for packet 2 when packet 4 arrives, again

    when packet 5 arrives, and so on. (To simplify this example, we think in terms of packets

    1, 2, 3, and so on, rather than worrying about the sequence numbers for each byte.)

      When the sender sees the third duplicate ACK for packet 2 — the one sent because thereceiver had gotten packet 6 — it retransmits packet 3. Note that when the retransmittedcopy of packet 3 arrives at the destination, the receiver then sends a cumulative ACK for

    everything up to and including packet 6 back to the source.