Address Resolution Protocol(Mot So Khai Niem)

Embed Size (px)

Citation preview

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    1/76

    Address Resolution Protocol

    Once a common encapsulation mechanism has been selected for Ethernet, hosts must stillconvert a 32-bit IP address into a 48-bit Ethernet address. The Address Resolution Protocol(ARP), documented in RFC 826, is used to do this. It has also been adapted for other media,such as FDDI.

    ARP works by broadcasting a packet to all hosts attached to an Ethernet. The packet containsthe IP address the sender is interested in communicating with. Most hosts ignore the packet.The target machine, recognizing that the IP address in the packet matches its own, returns ananswer.

    Hosts typically keep a cache of ARP responses, based on the assumption that IP-to-hardwareaddress mapping rarely change.

    ARP, Bridging and Routing

    ARP is transparent to bridging, since bridging will propagate ARP broadcasts like any otherEthernet broadcast, and will transparently bridge the replies.

    A router does not propagate Ethernet broadcasts, because the router is a Network Leveldevice, and Ethernet is a Data Link Level protocol. Therefore, an Internet host must use itsrouting protocols to select an appropriate router, that can be reached via Ethernet ARPs. AfterARPing for the IP address of the router, the packet (targeted at some other DestinationAddress) is transmitted to the Ethernet address of the router.

    Proxy ARP

    Proxy ARP is a technique that can be used by routers to handle traffic between hosts thatdon't expect to use a router as described above. Probably the most common case of its usewould be the gradual subnetting of a larger network. Those hosts not yet converted to the newsystem would expect to transmit directly to hosts now placed behind a router.

    A router using Proxy ARP recognizes ARP requests for hosts on the "other side" of the routerthat can't reply for themselves. The router answers for those addresses with an ARP replymatching the remote IP address with the router's Ethernet address (in essence, a lie).

    Proxy ARP is best thought of as a temporary transition mechanism, and its use should not beencouraged as part of a stable solution. There are a number of potential problems with its use,including the inability of hosts to fall back on alternate routers if a network component fails,and the possibility of race conditions and bizarre traffic patterns if the bridged and routednetwork segments are not clearly delineated.

    Reverse ARP

    Reverse ARP, document in RFC 903, is a fairly simple bootstrapping protocol that allows aworkstation to broadcast using its Ethernet address, and expect a server to reply, telling it itsIP address.

    Asynchronous Transfer Mode

    http://www.ietf.org/rfc/rfc826.txt?number=826http://www.ietf.org/rfc/rfc903.txt?number=903http://www.ietf.org/rfc/rfc826.txt?number=826http://www.ietf.org/rfc/rfc903.txt?number=903
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    2/76

    Overview

    ATM is a cell-switching and multiplexing technology that combines the benefits of circuitswitching (guaranteed capacity and constant transmission delay) with those of packetswitching (flexibility and efficiency for intermittent traffic). It provides scalable bandwidth froma few megabits per second (Mbps) to many gigabits per second (Gbps). Because of its

    asynchronous nature, ATM is more efficient than synchronous technologies, such as time-division multiplexing (TDM).

    With TDM, each user is assigned to a time slot, and no other station can send in that time slot.If a station has a lot of data to send, it can send only when its time slot comes up, even if allother time slots are empty. If, however, a station has nothing to transmit when its time slotcomes up, the time slot is sent empty and is wasted. Because ATM is asynchronous, time slotsare available on demand with information identifying the source of the transmission containedin the header of each ATM cell.

    ATM Cell Format

    Asynchronous Transfer Mode works with very short, fixed-length units called cells. ATM uses53 byte cells, consisting of a 5 byte header and a 48 byte payload. Because ATM isconnection-oriented, the cells can have a short adress space and the cells are not used forestablishing the circuit and maintaining it. Once a circuit is set up the bandwidth can be usedentirely for data transport. After the circuit is set up, ATM associates each cell with the virtualconnection between origin and destination. This can be a virtual channel or path. The 40 bitheader holds 8 bits for the virtual path (256 max), and 16 bits for the virtual channel (65536

    max). Having both virtual paths and channels make it easy for the switch to handle manyconnections with the same origin and destination.

    The proces that segments a longer entity of data into 53 byte cells is called 'segmentation andreassembly' (SAR). The data that goes into these cells comes from different native modeprotocols, such as TCP/IP. The ATM Adaptation Layer (AAL) takes care of the differencesbetween the different sources. The AAL adapts the protocols to an ATM intermediate format. Ituses socalled 'classes' to do so. AAL type 3 and 4 handle transmissions of connectionless data,AAL type 5 is intended for connection-oriented services.

    ATM Circuits

    Three types of ATM services exist: permanent virtual circuits (PVC), switched virtual circuits

    (SVC), and connectionless service (which is similar to SMDS).

    A PVC allows direct connectivity between sites. In this way, a PVC is similar to a leased line.Among its advantages, a PVC guarantees availability of a connection and does not require callsetup procedures between switches. Disadvantages of PVCs include static connectivity andmanual setup.

    An SVC is created and released dynamically and remains in use only as long as data is beingtransferred. In this sense, it is similar to a telephone call. Dynamic call control requires asignaling protocol between the ATM endpoint and the ATM switch. The advantages of SVCs

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    3/76

    include connection flexibility and call setup that can be handled automatically by a networkingdevice. Disadvantages include the extra time and overhead required to set up the connection.

    ATM Virtual Connections

    ATM networks are fundamentally connection oriented, which means that a virtual channel (VC)

    must be set up across the ATM network prior to any data transfer. (A virtual channel isroughly equivalent to a virtual circuit.)

    Two types of ATM connections exist: virtual paths, which are identified by virtual pathidentifiers, and virtual channels, which are identified by the combination of a VPI and a virtualchannel identifier (VCI).

    A virtual path is a bundle of virtual channels, all of which are switched transparently across theATM network on the basis of the common VPI. All VCIs and VPIs, however, have only localsignificance across a particular link and are remapped, as appropriate, at each switch.

    A transmission path is a bundle of VPs as shown below:

    ATM Service Types

    ATM relies on different classes of service to accomodate different applications (voice, video,data). They define the bits and bytes that are actually transmitted, as well as the requiredbandwidth, allowable error rates, and so forth. Class A and B, have timing compensation, forapplications that cannot tolerate variable delays. Class C and D, no timing compensation, fordata applications like LAN interconnect. Class D also simulates connectionlesscommunicaations, comonly found on LANs.

    Class A B C D

    Timing yes yesno no

    Bit rate constant variable variable variable

    Mode * ** *** ****

    AAL Type 1 Type 2 Type 3/4 Type 3/4

    Type 5

    * Connection-oriented, circuit emulation

    ** Connection-oriented, variablee bit-rate video

    *** Connection-oriented, connection-oriented data**** Connectionless, connectionless dataAAL 1:

    for isochronous, constaant bit-rate services, such as audio and video. This adaptionlayer corresponds to fractional and full T1 and T3, but with a greater range of choicesfor data rates.

    AAL 2:for isochronous variale bit-rate services, such as compressed video.

    AAL 3/4:

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    4/76

    for variable bi-rate data, such as LAN applications. Originally designed as two differentlayers, one for connetion-oriented services (like frame relay) and one for connectionlesservices (like SMDS). both can be done by the same AAL though.

    AAL 5:for vriable bit-rate data that must be formatted into 53-byte cells. Similar to AAL 3/4,easier to implement, less features.

    The service-specific convergence sublayer (SSCS) maps (converts) the data to the ATM layer.The convergence sublayer (CS) then compensates for the various interfaces (copper and fiber)that may be used on an ATM network. The ATM network can use Sonet, T1, E1, T3, E3, E4,FDDI, pure cells, Sonet SDH, block-encoded fiber, etc.

    BGP-4 Protocol OverviewBGP-4 Protocol OverviewBorder Gateway Protocol Version 4 (BGP-4), documented in RFC1771, is the current exterior routing protocol used for the global Internet. BGP is essentially adistance-vector algorithm, but with several added twists. Other BGP-related documents areRFC 1772 (BGP Application), RFC 1773 (BGP Experience),RFC 1774 (BGP Protocol Analysis),and RFC 1657 (BGP MIB).

    BGP uses TCP as its transport protocol, on port 179. On connection start, BGP peers exchangecomplete copies of their routing tables, which can be quite large. However, only changes(deltas) are then exchanged, which makes long running BGP sessions more efficient thanshorter ones.

    BGP's basic unit of routing information is the BGP path, a route to a certain set of CIDRprefixes. Paths are tagged with variouspath attributes, of which the most important areAS_PATH and NEXT_HOP.

    One of BGP-4's most important functions is loop detection at the Autonomous System level,using the AS_PATH attribute, a list of Autonomous Systems being used for data transport. Thesyntax of this attribute is made more complex by its need to support path aggregation, whenmultiple paths are collapsed into one to simplify further route advertisements. A simplifiedview of AS_PATH is that it is the list of Autonomous Systems that a route goes through to

    reach its destination. Loops are detected and avoided by checking for your own AS number inAS_PATH's received from neighboring Autonomous Systems.

    Every time a BGP path advertisement crosses an Autonomous System boundary, theNEXT_HOP attribute is changed to the IP address of the boundary router. Conversely, as aBGP path advertisement is passed among BGP speakers in the same AS, the NEXT_HOPattribute is left untouched. Consequently, BGP's NEXT_HOP is always the IP address of thefirst router in the next autonomous system, even though this may actually be several hopsaway. The AS's interior routing protocol is responsible for computing an interior route to reachthe BGP NEXT_HOP. This leads to the distinction between Internal BGP (IBGP) sessions(between routers in the same AS) and External BGP (EBGP) sessions (between routers indifferent AS's). NEXT_HOPs are only changed across EBGP sessions, but left intact across IBGPsessions.

    http://www.ietf.org/rfc/rfc1771.txt?number=1771http://www.ietf.org/rfc/rfc1771.txt?number=1771http://www.ietf.org/rfc/rfc1772.txt?number=1772http://www.ietf.org/rfc/rfc1773.txt?number=1773http://www.ietf.org/rfc/rfc1774.txt?number=1774http://www.ietf.org/rfc/rfc1774.txt?number=1774http://www.ietf.org/rfc/rfc1657.txt?number=1657http://www.ietf.org/rfc/rfc1771.txt?number=1771http://www.ietf.org/rfc/rfc1771.txt?number=1771http://www.ietf.org/rfc/rfc1772.txt?number=1772http://www.ietf.org/rfc/rfc1773.txt?number=1773http://www.ietf.org/rfc/rfc1774.txt?number=1774http://www.ietf.org/rfc/rfc1657.txt?number=1657
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    5/76

    The two most important consequences of this design are the need for interior routing protocols

    to reach one hop beyond the AS boundary, and for BGP sessions to be fully meshed within anAS. Since the NEXT_HOP contains the IP address of a router interface in the nextautonomoussystem, and this IP address is used to perform routing, the interior routing protocol must beable to route to this address. This means that interior routing tables must include entries onehop beyond the AS boundary. Furthermore, since BGP does not relay routing traffic from oneInterior BGP session to another (only from an Exterior BGP session to an IBGP session oranother EBGP session), BGP speakers must be fully meshed. When a BGP routing update isreceived from a neighboring AS, it must be relayed directly to all other BGP speakers in theAS. Do not expect to relay BGP paths from one router, through another, to a third, all withinthe same AS.

    It the responsibility of the BGP implementation to select among competing paths using anearly completely undefined algorithm. RFC 1771 states only that the computation be based

    on "preconfigured policy information. The exact nature of this policy information and thecomputation involved is a local matter." Since the AS_PATH attribute includes a list ofAutonomous Systems used to reach the destination, it's possible to implement primative policydecisions such as "avoid all routes through AS XXXX".

    A free software implementation of BGP-4 can be found in Gated.

    Dynamic Host Configuration Protocol

    What is DHCP?

    DHCP is a TCP/IP protocol that enables hosts (for example, diskless workstations or mobileusers) to obtain temporary IP addresses (out of a pool) from centrally-administered servers.The host runs the DHCP server, and the workstation runs the DHCP client.

    Clients broadcasta message to locate a DHCP server, which responds with the:

    IP Address, which is valid for a period of time specified by the administrator of the

    DHCP server.

    Subnet Bit Mask.

    http://www.gated.org/http://www.gated.org/
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    6/76

    Default Gateway.

    Optional DNS Servers.

    Duration for which the IP address assignment is valid

    DHCP is flexible so that other information can also be stored and retrieved. A shortcoming isthat there is currently no way to update Domain Name Servers with the new IP address for a

    user's DNS name (DNS names remain permanently assigned to hosts). Since importantdestination machines (such as servers) would use permanently assigned IP addresses, thisshould not be a big problem (until a solution is standardized).

    Example Configuration

    In many ways, DHCP is quite similar to RADIUS (Remote Authenticat Dial-In User System),which assigns a user their IP address, Subnet Mask, Default Gateway, and DNS Servers. Theprimary difference is in the authentication. Authentication for RADIUS is handled by ausername/password pair, while the only authentication system that DHCP supports is throughMAC Address filtering.

    The VPEC network runs the Internet Software Consortium DHCP Server to handle the granting

    of IP addresses to all workstations and laptops on the network. This software, while it runs ona UNIX system, is similar in configuration to many other DHCP systems, including Microsoft's.

    Here's the basic configuration for the desktop workstations:

    subnet 209.39.6.0 netmask 255.255.255.0 {

    range 209.39.6.129 209.39.6.254;

    option subnet-mask 255.255.255.0;

    option broadcast-address 209.39.6.255;

    option routers 209.39.6.1;

    option domain-name-servers 209.39.6.4, 209.39.6.5;

    option domain-name "training.verio.net";

    default-lease-time 2592000;

    max-lease-time 2592000;

    }

    This defines a pool of IP's (209.39.6.129 - 209.39.6.254) that workstations will be assignedfor 2592000 seconds at a time.

    However, if we want to provide the same IP address for a computer everytime it logs on, thenwe can define the MAC address for the computer into the DHCP server configuration asfollows:

    host rnejdl {

    # Static IP for Rusty

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    7/76

    hardware ethernet 00:50:04:DF:1A:4C;

    fixed-address 209.39.6.32;

    option subnet-mask 255.255.255.0;

    option broadcast-address 209.39.6.255;

    option routers 209.39.6.1;

    option domain-name-servers 129.250.35.250, 129.250.35.251;

    option domain-name "training.verio.com";

    }

    By using this same configuration for more than one computer, we can provide a static IP totrusted workstations.

    Introduction to Domain Name Service

    Paul Mockapetris designed DNS in 1984 to solve escalating problems with the old name-to-address mapping system. The old system consisted of a single file, known as the host table,maintained by the Stanford Research Institute's Network Information Center (SRI-NIC). Asnew host names trickled in, SRI-NIC would add them to the table - a couple times a week.Systems administrators would grab the newest version (via FTP) and update their domainname servers.

    But as the Net grew, the host table became unwieldy. Though it worked fine for name-to-address mapping, it wasn't the most practical or effective way to update and distribute theinformation. And since the stability of the rapidly growing Internet was at stake, Mockapetrisand some other folks decided to find a better way.

    Enter DNS. The great thing about the domain name system is that no single organization isresponsible for updating it. It's what's known as a distributed database; it exists on manydifferent name servers around the world, with no one server storing all the information.Because of this, DNS allows for almost unlimited growth.

    The domain name space

    In order to understand how a DNS server works, you should be familiar with what is called thedomain name space. It sounds a little ominous, I know, but really it's quite simple. In fact,you've probably seen it at one time or another represented by an inverted tree that lookssomething like this:

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    8/76

    Each node on the tree represents a domain. Everything below a node falls into its domain. Onedomain can be part of another domain. For example, the machine chichi is part of the .us

    domain as well as the .com domain. You'll see why this is important in just a minute.

    How it works

    A DNS server is just a computer that's running DNS software. Since most servers are Unixmachines, the most popular program is BIND (Berkeley Internet Name Domain), but you canfind software for the Mac and the PC as well.

    DNS software is generally made up of two elements: the actual name server, and somethingcalled a resolver. The name server responds to browser requests by supplying name-to-address conversions. When it doesn't know the answer, the resolver will ask another nameserver for the information.

    To see how it works, let's go back to the domain-name-space inverted tree.

    When you type in a URL, your browser sends a request to the closest name server. If thatserver has ever fielded a request for the same host name (within a time period set by the

    administrator to prevent passing old information), it will locate the information in its cache andreply.

    If the name server is unfamiliar with the domain name, the resolver will attempt to "solve" theproblem by asking a server farther up the tree. If that doesn't work, the second server will askyet another - until it finds one that knows. (When a server can supply an answer withoutasking another, it's known as an authoritative server.)

    Once the information is located, it's passed back to your browser, and you're sent on yourmerry way. Usually this process occurs quickly, but occasionally it can take an excruciatinglylong time (like 15 seconds). In the worst cases, you'll get a dialog box that says the domainname doesn't exist - even though you know damn well it does.

    This happens because the authoritative server is slow replying to the first, and your computergets tired of waiting so it times-out (drops the connection). But if you try again, there's a goodchance it will work, because the authoritative server has had enough time to reply, and yourname server has stored the information in its cache.

    Ethernet Fundamentals

    Developed in the early 1970's, Ethernet has proven to be one of the most simple, reliable, andlong-lived networking protocols ever designed. The high speed and simplicity of the protocolhas resulted in its widespread use.

    Although Ethernet works across a variety of layer one media, the three most popular formsare 10BaseT, 10Base2, and 10BaseF, which use unshielded twisted pair (UTP), coaxial, and

    fiber optic cables respectively. UTP is used in a "star" configuration, in which all nodes connectto a central hub. 10Base2 uses a single coaxial cable to connect all workstations together in a"bus" configuration, and does not require a hub. 10BaseF uses fiber optics, which, thoughexpensive, can travel long distances (2km) and through electrically noisy areas.

    An interesting difference between coaxial Ethernet and other types is that coax Ethernet istruly a one-to-many (or, 'point-to-multipoint') connection; fiber and UTP connections are, froma layer one perspective, one-to-one (or, 'point-to-point') connections, and require anadditional networking device (typically, a repeater, or Ethernet hub) to connect to multiple

    http://www.isc.org/bind.htmlhttp://www.isc.org/bind.html
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    9/76

    other workstations. This is why coax Ethernet does not require a hub, and Ethernet over othermedia typically does.

    Ethernet Topologies

    Pro Con Typical Use

    10BaseT Very reliable- one fault usuallydoesn't affect entire network. Relatively short distance fromhub to workstation (100m).

    Requires a lot of wiring (aseparate link for eachworkstation.)

    Offices and homenetworks.

    10Base2 Cheap- no hub required, nowiring except from station tostation.

    Well shielded against electricalinterference.Can transmit longer distances(200m).

    Any break in connectivitydisrupts entire networksegment.

    Problems can be very difficultto troubleshoot.

    Small or homenetworks, hub to hublinks.

    10BaseF Long distance networking(2000m).

    Immune to electricalinterference.

    Very expensive to install. Long distance hub-to-hub or switch-to-hublinks.

    Ethernet is like a bunch of loud people in an unmoderated meeting room. Only one person cantalk at a time, because communication consists of standing up and yelling at the top of yourlungs. People are allowed to start communicating whenever there is silence in the room. If twopeople stand up and start yelling at the same time, they wind up garbling each others'attempt at communication, an event known as a "collision." In the event of a collision, the twooffending parties sit back down for a semi-random period of time, then one of them stands up

    and starts yelling again. Because it's unmoderated, the likelihood of collisions occurringincreases geometrically as the number of talkers and the amount of stuff they talk aboutincreases. In fact, networks with many workstations are generally considered to be overloadedif the segment utilization exceeds 30-40%. If the collision light on your hubs is lit more oftenthan not, you probably need to segment your network. Consider the purchase of a switch,described below.

    Ethernet hubs are used in 10BaseT networks. A standard hub is just a dumb repeater--anything it hears on one port, it repeats to all of its other ports. Although 10BaseT is usuallywired with eight wire jacks (known as RJ45 connectors), only four wires are used-- one pair totransmit data, and another pair to receive data. While transmitting, an Ethernet card will listento its receive pair to see if it hears anyone else talking at the same time. These two behaviors(listen for silence before talking, and detect other people talking at the same time) aredescribed by the as CSMA/CD, or "Carrier Sense Multiple Access, Collision Detection."

    One hundred megabit Ethernet (100BaseTX) works just like ten megabit Ethernet, only tentimes faster. On high-quality copper (known as Category 5, or CAT 5 UTP), 100BaseTX usesthe same two pair of copper to communicate. If you have standard network-quality copper, analternative is to use 100BaseT4, which uses all four pairs, but can communicate at 100Mbpson CAT 3 UTP.

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    10/76

    Gigabit Ethernet works just like hundred megabit Ethernet, only ten times faster (1000Mbps,or 1Gbps.) There are some Gigabit Ethernet devices floating around out there, but it's unlikelythat you'll find such devices on the small LANs that you'd find on the "Near Side of the 'Net."

    If your conference room gets too busy, you may consider splitting them into two groups byputting a partition wall with a door between the halves, and putting a person in the doorway.This person would listen to the conversations in both rooms, memorize the names (Ethernetcard addresses) of everyone in each room, and forward messages from room to room whennecessary. A device to do this is called a "transparent bridge." It's called "transparent"because it's smart enough to learn the Ethernet addresses on its own without the workstationssuspecting anything is going on. ["Source-route bridges" are uncommonly used so I'm notgoing to discuss them.]

    Ethernet switches are little more than high-speed, multi-port bridges. They learn the Ethernetaddresses of everyone attached to each port, and make intelligent forwarding decisions basedon Ethernet card address (aka MAC address.) Because communication between 100Mbps and10Mbps networks requires buffering, Ethernet switches are often used for this purpose. Manyinexpensive switches have many 10Mbps ports and one or two 100Mbps ports. Typically, youwould connect your server(s) to the 100Mbps port(s), and workstations or entire hubs to the10Mbps ports. The buffering and intelligent forwarding allows another interesting feature to

    exist-- "full-duplex" Ethernet. "Half-duplex" means you can either talk or listen, but not both,at a given time, such as when using a radio. "Full-duplex" communication means you can talkand listen at the same time, such as when on the phone. Since 10BaseT uses separate pairs ofcopper for sending and receiving, it's physically possible to do both if there are no otherworkstations on your network segment-- which is the case if you are directly attached to aswitch. Note that both the switch port and your network card must be configured for fullduplex operation for this to work, but the result is worth it: a full 20Mbps for "regular"Ethernet and a whopping 200Mbps of bandwidth available for full-duplex fast Ethernet. Sincecollisions are eliminated, the 30% rule does not apply. When considering the purchase of aswitch, there are a few important considerations, not all of which may apply to yourrequirements:

    Does the switch support 100Mbps on any ports? How many, and will it autodetect

    10/100BaseT?

    Does the switch support full duplex? Even on the 100Mbps ports?

    How many MAC (Ethernet card) addresses does it store? 500? 5000? "Unlimited" is not

    a rational answer.

    Some "workgroup" switches only allow one MAC address per port, so these would not

    be suitable if you plan to connect hubs to switch ports.

    You tend to get what you pay for. If a switch seems unreasonably inexpensive

    compared to other switches that appear to have similar specs, look closer, or checkthe detailed specs on the manufacturer's web site. Often, you'll find that a cheapswitch either isn't a switch at all (see last item) or only allows one workstation per port(see item above last item.)

    Frame RelayFrame Relay is probably the simplest data communications protocol ever conceived. Designedto run over virtually error- free circuits, it's a protocol stripped down for speed.

    Frame Relay abolishes the Network Layer of the OSI model, claims the routing andmultiplexing functions for itself, and leaves everything else to the higher layers. A Frame Relayservice ignores traditional functions such as window rotation, sequence numbering, frameacknowledgment, and automatic retransmission in order to concentrate on the basics:

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    11/76

    delivering correct data quickly in the right order to the right place. It simply discards incorrectdata.

    The need for a streamlined protocol like Frame Relay grows from several facts of modern datacommunications:

    Users have more data to communicate, and they'd like that data to travel faster and inlarger chunks than current technology has allowed.

    Physical transmission gets faster every year and introduces fewer and fewer errors

    into the data.

    Computers and workstations with the intelligence to handle high-level protocols have

    replaced dumb terminals as the instruments of choice.

    Thanks especially to cleaner transmission and smarter workstations, the procedures thattraditional Data Link and Network protocols use to recognize and correct errors have becomeredundant for jobs that require large volume at high speeds.

    Frame Relay handles volume and speed efficiently by combining the necessary functions of theData Link and Network layers into one simple protocol. As a Data Link protocol, Frame Relay

    provides access to a network, delimits and delivers frames in proper order, and recognizestransmission errors through a standard Cyclic Redundancy Check. As a Network protocol,Frame Relay provides multiple logical connections over a single physical circuit and allows thenetwork to route data over those connections to its intended destinations.

    In order to operate efficiently, Frame Relay eliminates all the error handling and flow controlprocedures common to conventional protocols such as SDLC and X.25. In their place, itrequires both an error-free transmission path, such as a digital carrier circuit or a fiber span,and intelligent higher- layer protocols in the user devices.

    By definition, Frame Relay is an access protocol that operates between an end-user devicesuch as a LAN bridge or router or a front-end processor and a network. The network itself canuse any transmission method that's compatible with the speed and efficiency that Frame Relayapplications require. Some networks use Frame Relay itself; others use either digital circuitswitching or one of the new cell relay systems.

    Simple Frame Relay Configuration

    ,-------. .-----. .~~~~~~~~~~~~~~~~~~~~.

    | MAIN |_____| FEP |_____| :"""": :"""": |

    | FRAME | `-----' |\..: SW :..: SW : |

    `-------' /`\ | :....: :....: |

    : | : : |

    FEP = FRONT-END : | :"""": :"""": |

    PROCESSOR : | : SW :..: SW :.. | .--------.

    : | :....: :....: \|_____| FRAME |

    : | | | RELAY |

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    12/76

    : `~~~~~~~~~~~~~~~~~~~~' /`\ | ROUTER |

    FRAME : : `--------'

    RELAY ............: .........................: |

    LINKS |

    +---------------+--------------+--------|

    | | |

    .--------. .--------. .--------.

    | DEVICE | | DEVICE | | DEVICE |

    `--------' `--------' `--------'

    Frame Relay Networks

    The logical path along an originating Frame Relay link, through the network, and along aterminating Frame Relay link to its ultimate destination is called a virtual route or virtualcircuit. In a network with Frame Relay access, a virtual circuit uniquely defines the pathbetween two endpoints.

    In the diagram above, a mainframe communicates with each of the workstations (devices) onthe LAN over a separate virtual circuit. The Frame Relay protocol identifies a virtual circuit bya 10-bit address called a Data Link Connection Identifier (DLCI). Each DLCI is unique on itslocal Frame Relay link. However, DLCIs are NOT unique throughout the network.

    Since the DLCI is a 10-bit number, the Frame Relay protocol defines 1024 possible DLCIs. Ofthese, 2 (0 and 1023) have been reserved for signalling and 30 (1 to 15 and 1008 to 1022)have been reserved for future use.

    For instance, networks that have implemented the optional multicasting feature reserve DLCIs1019 to 1022 for that purpose. The remaining 992 DLCIs, (16 to 1007), are available tosubscribers.

    The current Frame Relay standards specify only permanent virtual circuits (PVCs, sometimescalled Permanent Logical Links, or PLLs), which are defined when a user first subscribes to theservice. Future versions may also include Switched Virtual Circuits (SVCs).

    At subscription time, each PVC is assigned several important parameters. First is its

    Committed Information Rate (CIR), which is the largest number of bits per second that thenetwork agrees to transmit for a PVC within a specified period without discarding data. A PVC'sCIR may be less than or equal to the physical capacity of the whole Frame Relay circuit.

    Next is its Committed Burst Size (Bc), which is the largest number of consecutive bits that thenetwork agrees to carry without discarding data. Some networks also assign an Excess BurstSize (Be) over the Committed Burst Size, which the network agrees to carry with a greaterlikelihood that some data will be discarded.

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    13/76

    A Frame Relay network can discard data for any of three reasons:

    A subscriber has exceeded the amount of data that the network has agreed to carry

    A failed Cyclic Redundancy Check, which indicates physical transmission errors

    Network congestion, which occurs when the network's community of subscribers

    transmits enough data to approach or exceed the network's capacity to carry it

    A Frame Relay network relies on the higher-layer protocols in its attached devices to recoverfrom errors or congestion. In practice, this means that the higher layers must recognize thatthe network has discarded one or more frames of data.

    Most higher-layer protocols use rotating sequence numbers to recognize frames that havebeen discarded. When a device receives a sequence number out of order, it requests that itspartner retransmit all frames in order since the last frame it received with a correct sequencenumber.

    In a well-tuned network, this typically includes the missing frame and all frames that itsoriginator had transmitted in the time the destination device took to recognize the discard andsend a message across the network requesting retransmission. In most cases, the originating

    device retransmits more data than would have been necessary.

    This is a very reliable way to recover data lost through occasional transmission errors.However, when data's been discarded because of traffic congestion, bulk retransmission canonly make the problem worse.

    Fortunately, most higher-layer protocols use some form of throttling or flow controlmechanism to recognize and prevent congestion.

    The Frame Relay protocol also provides a way for the network to alert its subscribers when itbecomes congested. The header of each Frame Relay frame contains two Explicit CongestionNotification bits that the network can set if it transmits that frame over a congested path.Each of these bits signifies congestion in a specific direction on the virtual route.

    A value of 1 in the Forward Explicit Congestion Notification (FECN, pronounced "feacon") bitindicates that the frame has encountered a congested path on its way across the network.

    A value of 1 in the Backward Explicit Congestion Notification (BECN, pronounced "beacon") bitindicates that the path through the network in the direction opposite the frame's path (i.e.,toward the frame's source) is congested.

    The FECN and BECN bits explicitly notify a subscriber's device of congestion on the networkand implicitly ask that device to withhold traffic or reduce its transmission rate until thecongestion has cleared.

    Frame Relay Frame Header

    8 7 6 5 4 3 2 1

    | | | | | | | | |

    0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | FLAG

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    14/76

    `-----`-----`-----`-----`-----`-----`-----`-----' ...

    | | | | :

    1 | DLCI (high-order bits) | C/R | EA | : FRAME

    `-----------------------------------`-----`-----' > RELAY

    | | | | | | : HEADER

    2 | DLCI (low-order bits) | FECN| BECN| DE | EA | :

    `-----------------------`-----`-----`-----`-----' ..:

    | | | |

    3 | ADDRESS EXTENSION | D/C | EA | EXTENDED

    `-----------------------------------`-----`-----' ADDRESS

    The Frame Relay frame header is illustrated above. The first octet is a flag field that delimitsthe frame from another frame or from idle time on the circuit. The second octet contains thefirst 6 bits of the 10-bit DLCI followed by a Command/Response bit (C/R) and the frame's firstExtended Address (EA) bit.

    Use of the C/R bit is not defined by Frame Relay, so implementors are free to define a functionfor it. A value of 0 in an EA bit indicates that the frame's address (DLCI) continues in the nextoctet. Since the DLCI must occupy parts of two octets at minimum, the EA bit in this octetshould always have a value of 0.

    The next octet contains the remaining four bits of the DLCI followed by the FECN and BECNbits described above, a Discard Eligibility (DE) bit, and the frame's second EA bit.

    The subscriber or the network may set the value of the DE bit to 1 to indicate that the networkmay discard this frame in preference to frames in which the value of the DE bit is 0. (Thisoccurs only after it has discarded all frames transmitted in excess of their subscribers' CIR andBc).

    In a normal Frame Relay frame, the value of the EA bit in this octet should be 1, to indicatethat the address information ends here. An EA value of 0 indicates an that an ExtendedAddress Octet follows. Extended addressing is seldom implemented.

    The subscriber's data follows the Frame Relay header in most Frame Relay frames, and thedata is followed in turn by the 2- octet Frame Check Sequence (FCS) and a final flag octet. Aframe must contain at least one octet of user data for a total of 5 octets between flags.

    A frame may not exceed 8192 octets between flags, counting header and FCS. The latestFrame Relay standards recommend a maximum frame size of 1600 octets overall.

    Implementors are free to define a smaller maximum frame size if they wish.

    Local Management Interface

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    15/76

    A major area where the Frame Relay protocol leaves room for improvement is themanagement of the interface. The network and the subscriber's device should be able tocommunicate information on which DLCIs have been configured for the link and on whichDLCIs are currently active. Since Frame Relay applications can go for relatively long periodswithout bursts of data, the devices also need a mechanism for ensuring that the physical linkis running normally in the absence of traffic.

    In September 1990, a group of Frame Relay vendors introduced a signalling mechanism forFrame Relay links that handles both of these functions. The Local Management Interface (LMI)is a simple protocol that runs in one dedicated PVC of a Frame Relay link and allows thesubscriber and the network to exchange information about the link itself and about the statusof the other PVCs. Since LMI occupies its own PVC, its link signalling cannot congest orinterfere with traffic on the PVCs that carry subscriber data.

    The use of LMI is entirely optional.

    The protocol is designed so that the subscriber must originate all exchanges of information.This feature prevents the network from transmitting unwanted information to subscriberswhose devices haven't implemented the LMI protocol.

    The subscriber begins an LMI exchange by sending a Status Enquiry message. The Networkcompletes the exchange by answering with a Status message. An exchange of LMI messagescan perform either of two functions:

    A simple "heartbeat" exchange that verifies that the link is running normally

    A report on the individual status of each DLCI defined for the link

    LMI Frame Header

    8 7 6 5 4 3 2 1

    | | | | | | | | |

    0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | FLAG

    `-----`-----`-----`-----`-----`-----`-----`-----` ...

    1 | 1 1 1 1 1 1 | 0 | 0 | : LMI

    `-----------------------------------`-----`-----` > DLCI

    2 | 1 1 1 1 | 0 | 0 | 0 | 1 | : 1023

    `-----------------------`-----`-----`-----`-----' ..:

    3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | LAPD UI

    `-----`-----`-----`-----`-----`-----`-----`-----'

    4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | PROT DISC

    `-----`-----`-----`-----`-----`-----`-----`-----'

    5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | DUMMY CREF

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    16/76

    `-----`-----`-----`-----`-----`-----`-----`-----'

    6 | MESSAGE TYPE (STATUS OR STATUS ENQUIRY) |

    `-----------------------------------------------'

    | INFORMATION ELEMENTS ACCORDING TO TYPE |

    `-----------------------------------------------'

    An LMI frame is divided into a header of 6 octets (beyond the flag) and a list of InformationElements (IEs) that carry the heartbeat or status information. The Data Link protocol used forLMI is a subset of LAPD, the ITU's Link protocol for ISDN signalling. Where the Frame Relaylink protocol defines a 2- octet frame header, the LAPD protocol defines a 6-octet header.

    Octets 1 and 2 contain the DLCI used by LMI. In the original LMI specification, this wasdefined to be DLCI 1023. The DLCI appears in Frame Relay format, 6 bits in octet 1 and 4 bitsin octet 2. Notice that the Frame Relay control bits (C/R, EA, FECN, BECN, and DE) are allpresent, but in practice, only the final EA bit (1 for "end of address") is actually used.

    Octet 3 identifies all LMI frames as Unnumbered Information frames according to the LAPDstandard.

    Octet 4 contains a protocol discriminator which identifies the frame as one containing LMIinformation. (The protocol discriminator will become more important in future implementationsthat may use other signalling protocols such as ISDN's Q.931 instead of, or along with, LMI.)

    Octet 5 contains a LAPD parameter called a Call Reference. In LMI frames, this is a dummyfield that's always set to 0.

    Octet 6 identifies the LMI Message Type as either Status Enquiry (from the subscriber) orStatus (from the network).

    LMI Frame Information Elements

    Behind the header, the basic LMI protocol recognizes just three types of information elements(IEs):

    Report Type

    Keep-Alive

    PVC Status

    All LMI messages contain one Report Type element and one Keep- Alive element. A full Statusmessage from the network to the subscriber also contains one PVC Status element for each

    PVC on the link.

    The Keep-Alive information element contains a pair of 8-bit sequence numbers, Current andLast Received, through which the heartbeat process maintains a running check on the healthof the link.

    The heartbeat process is similar to the error detection mechanism used by higher-layerprotocols. At a regular interval, the subscriber sends a Status Enquiry message that contains aReport Type value of Sequence Number Exchange and a Keep-Alive Element.

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    17/76

    When the Network receives the message, it records the Current Sequence Number as its LastReceived Sequence Number, increments it by one to produce its new Current SequenceNumber, and transmits a Status message with a Keep-Alive element that contains the newnumbers.

    The sequence numbers rotate in Modulo 256 with one exception. In normal sequencecounting, both the subscriber and the network must skip the value 0. Either side may reset itssequence count to 0 at any time: the LMI specification leaves this option open toimplementors as a way to reset the heartbeat process in response to conditions on the link.

    If either side receives a heartbeat message in which the Sequence Numbers don't followcorrectly, it may declare an LMI sequence error. The LMI protocol does not define how usersare to handle errors, but suggests maintaining a count of "error events," including bad frames(failed frame checks) and LMI sequence errors, and initiating error-handling procedures whenthe count reaches a specified threshold within a specified period.

    Error handling mechanisms such as alarms and link resets are left to the implementor.

    After a specified number of sequence number exchanges, the subscriber issues a StatusEnquiry with a value of "Full Status" in the Report Type element. The network answers with a

    Status Message containing a PVC Status information element for each DLCI currently definedfor the link.

    Like all LMI information elements, it begins with 2 octets that indicate its element type andlength. The next 2 octets contain the DLCI of the PVC on which the element reports.

    Note that the format of the DLCI octets is different from that in the Frame Relay header. Inthe first octet after the DLCI, the first 4 bits are not used and are set to 0. Two of the next 4bits have meaning in all LMI implementations:

    N (New) bit

    A (Active) bit

    The N bit is set to 1 only when the PVC Status element is reporting on a newly defined DLCI.The N bit will be reset to 0 in all subsequent PVC Status elements for that DLCI.

    The A bit is set to 1 whenever the PVC to which the element refers is Active, i.e., known to betransmitting and receiving data. Implementors are free to define when and how a PVCbecomes active.

    Functions of the bits labeled "D" and "R" and of the three reserved octets at the end of theelement are defined by a set of optional extensions to the LMI specification.

    Optional LMI Extensions

    The LMI specification also defines several optional extensions:

    Global addressing convention

    Multicast capability

    A simple flow control mechanism

    Ability for the network to communicate a PVC's CIR to the subscriber in a Status

    message

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    18/76

    A new message type that allows the network to announce PVC status changes without

    prompting from the subscriber

    Implementors may build any, all, or none of these features into their networks.

    Global Addressing

    The global addressing convention defines a simple commitment from the operator of anetwork that DLCIs will remain unique throughout the network. In a globally addressednetwork, each DLCI identifies a subscriber device uniquely.

    For a few years Frame Relay networks will remain small enough that they won't need toimplement extended addressing to use the global addressing feature. As networks grow andinterconnect, any trend toward global addressing will probably require use of extendedaddresses.

    Multicasting

    The LMI multicast capability adapts a popular feature from the LAN world. It reserves a blockof DLCIs (1019 to 1022) as multicast groups so that a subscriber wishing to transmit amessage to all members of the group must transmit the message only once on the multicastDLCI.

    The multicasting feature requires a new information element, Multicast Status, in the full LMIStatus message. The Multicast Status element is similar in most respects to the PVC Status IE,but it includes a field for the source DLCI transmitting over the multicast group. It also omitsthe function of the R bit (see below), since a multicast group may use several paths withdifferent congestion conditions.

    Flow Control

    The optional LMI flow control capability provides a way for the network to report congestion tothe subscriber. The flow control feature uses the optional R bit in the PVC Status informationelement as a "Receive-Not-Ready" signal for the PVC whose status is being reported. A 1 inthe R bit indicates congestion; a 0 indicates no congestion.

    On networks where LMI is fully implemented, this feature improves on the ECN bits of thebasic Frame Relay protocol because the LMI heartbeat process guarantees that PVC Statuselements will reach the subscriber periodically. Of course, according to the laissez fairepractice of Frame Relay, the subscriber may or may not have implemented the feature, andmay or may not choose to act on the information.

    Communicating the Minumum Bandwidth Available

    The next optional feature uses the three reserved octets at the end of the PVC Statusinformation element to communicate the minimum bandwidth available on the network to thePVC.

    In most implementations, this number will be the PVC's CIR. However, clever implementorsand operators may begin to use this feature to respond to changing traffic conditions bydynamically increasing or decreasing the bandwidth available to individual PVCs.

    The specification neither encourages nor forbids such practices.

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    19/76

    Status Update Message

    The final optional feature of LMI allows the network to communicate changes in a PVC's statusby means of a message type called Status Update without first receiving a Status Enquiry fromthe subscriber.

    The Status Update contains only PVC Status and Multicast Status information elements, so itcannot function in the heartbeat process. Further, it contains Status elements for only thosePVCs and multicast groups whose status has changed.

    Changes reported include:

    Deletion of a PVC or multicast group (reported by setting the optional D bit of the

    Status element)

    Changes in the minimum bandwidth allocated to a PVC

    Activation or deactivation of a PVC (indicated by setting or clearing the A bit)

    Flow control information (changes in congestion status, signalled by setting or

    resetting the R bit). Besides improving flow control, this feature allows LMI signallingover network-to-network Frame Relay connections where neither partner functions asa subscriber device

    Consolidated Link Layer Management

    Another signalling protocol for Frame Relay networks predates LMI. In its original Frame Relayspecification, the American National Standards Institute (ANSI) defines an optionalConsolidated Link Layer Management (CLLM) message.

    CLLM's major function is to augment the BECN mechanism for reporting congestion byallowing the network to report in the "backward" direction in the absence of PVC traffic tocarry explicit congestion notification. Both LMI and CLLM operate on DLCI 1023, so the twocannot be implemented on the same network.

    CLLM reports congestion in more detail than LMI, noting both the congestion's cause and itsexpected duration along with a list of DLCIs that should reduce traffic. To date, few FrameRelay vendors have implemented CLLM. The optional Status Update feature of LMI performs asimilar function, and its implementation in the richer set of LMI functions makes LMI seemmore attractive.

    Frame Relay Standards

    Alongside a very active community of implementors, several standards bodies have definedspecifications for aspects of Frame Relay communications.

    In North America, Committee T1S1 of the Exchange Carrier Standards Association has beenassigned to draft Frame Relay standard for the American National Standards Institute (ANSI):

    The current ANSI standards, T1.606- 1990, T1.617-1991, and T1.618-1991

    respectively define Frame Relay service, access signalling for Frame Relay, and thecore aspects of the Frame Relay protocol.

    The LMI specification, which originated in the "private sector" appears as Annex D of

    T1.617-1991, which defines a status signalling process that's essentially the same asLMI without the optional extensions. ANSI's LMI-like protocol operates on DLCI 0.

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    20/76

    The specification for CLLM appears in the main body of T1.618-1991.

    Internationally, the International Telecommunications Union (ITU) has defined a correspondingset of standards:

    Recommendation I.233 for the service description, Annex A of recommendation Q.922

    for the Frame Relay data transfer protocol. Recommendation Q.933 for access signalling.

    The Frame Relay standards differ from the current practice of Frame Relay communications inone important respect. All the standards assume that the Frame Relay link will carry switchedvirtual circuits over one channel of an ISDN access interface, while virtually all real-worldimplementations of Frame Relay are carrying permanent virtual circuits over dedicated accesscircuits into special packet networks. Thus, the standards are much more complex than theircurrent implementations.

    The standards define a set of necessarily elaborate signalling procedures for:

    Gaining access to an ISDN channel

    Establishing a Frame Relay link on that channel

    Establishing and terminating virtual circuits

    In practice so far, the one-time process of subscribing to a Frame Relay service replaces all ofthis signalling. As carriers implement ISDN more widely, the ISDN signalling aspects of theFrame Relay standards will become more important.

    FTP Commands Overview

    Command Short Description Command Short Description

    ! Run mdirMultiple directorylisting

    ? Help mget Mulitiple get

    append Append to a file mkdir Make directory

    asciiSet ASCII transfertype

    mls Multiple listing

    bell Toggle bell mput Multiple Put

    binarySet binary trasfertype

    open Connect to FTP server

    bye Terminate ftp sessionand exit

    prompt Toggle prompting

    cd Change directory put Upload file

    closeTerminiate FTPsession

    pwdPresent workingdirectory

    debugToggle debuggingmode

    quitTerminate FTPsession and quit

    http://networking.ringofsaturn.com/Protocols/ftp.php#!%23!http://networking.ringofsaturn.com/Protocols/ftp.php#mdir%23mdirhttp://networking.ringofsaturn.com/Protocols/ftp.php#?%23?http://networking.ringofsaturn.com/Protocols/ftp.php#mget%23mgethttp://networking.ringofsaturn.com/Protocols/ftp.php#append%23appendhttp://networking.ringofsaturn.com/Protocols/ftp.php#mkdir%23mkdirhttp://networking.ringofsaturn.com/Protocols/ftp.php#ascii%23asciihttp://networking.ringofsaturn.com/Protocols/ftp.php#mls%23mlshttp://networking.ringofsaturn.com/Protocols/ftp.php#bell%23bellhttp://networking.ringofsaturn.com/Protocols/ftp.php#mput%23mputhttp://networking.ringofsaturn.com/Protocols/ftp.php#binary%23binaryhttp://networking.ringofsaturn.com/Protocols/ftp.php#open%23openhttp://networking.ringofsaturn.com/Protocols/ftp.php#bye%23byehttp://networking.ringofsaturn.com/Protocols/ftp.php#prompt%23prompthttp://networking.ringofsaturn.com/Protocols/ftp.php#cd%23cdhttp://networking.ringofsaturn.com/Protocols/ftp.php#put%23puthttp://networking.ringofsaturn.com/Protocols/ftp.php#close%23closehttp://networking.ringofsaturn.com/Protocols/ftp.php#pwd%23pwdhttp://networking.ringofsaturn.com/Protocols/ftp.php#debug%23debughttp://networking.ringofsaturn.com/Protocols/ftp.php#quit%23quithttp://networking.ringofsaturn.com/Protocols/ftp.php#!%23!http://networking.ringofsaturn.com/Protocols/ftp.php#mdir%23mdirhttp://networking.ringofsaturn.com/Protocols/ftp.php#?%23?http://networking.ringofsaturn.com/Protocols/ftp.php#mget%23mgethttp://networking.ringofsaturn.com/Protocols/ftp.php#append%23appendhttp://networking.ringofsaturn.com/Protocols/ftp.php#mkdir%23mkdirhttp://networking.ringofsaturn.com/Protocols/ftp.php#ascii%23asciihttp://networking.ringofsaturn.com/Protocols/ftp.php#mls%23mlshttp://networking.ringofsaturn.com/Protocols/ftp.php#bell%23bellhttp://networking.ringofsaturn.com/Protocols/ftp.php#mput%23mputhttp://networking.ringofsaturn.com/Protocols/ftp.php#binary%23binaryhttp://networking.ringofsaturn.com/Protocols/ftp.php#open%23openhttp://networking.ringofsaturn.com/Protocols/ftp.php#bye%23byehttp://networking.ringofsaturn.com/Protocols/ftp.php#prompt%23prompthttp://networking.ringofsaturn.com/Protocols/ftp.php#cd%23cdhttp://networking.ringofsaturn.com/Protocols/ftp.php#put%23puthttp://networking.ringofsaturn.com/Protocols/ftp.php#close%23closehttp://networking.ringofsaturn.com/Protocols/ftp.php#pwd%23pwdhttp://networking.ringofsaturn.com/Protocols/ftp.php#debug%23debughttp://networking.ringofsaturn.com/Protocols/ftp.php#quit%23quit
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    21/76

    delete Delete file quoteSend arbitrary FTPcommand

    dir Directory listing recv Receive file

    disconnect Terminate FTP session remotehelpHelp from remoteserver

    get Download file rename Rename file

    glob Toggle glob rmdir Remove directory

    hash Toggle hash # send Send one file

    help Local help status Current status

    lcd Change local directory trace Toggle packet tracing

    literalSend arbitrary FTPcommand

    typeShow file transfertype

    lsList contects ofremote directory

    user Connect as new user

    mdelete Delete multiple files verboseToggles verbosemode

    !Escapes to the shell (command prompt) to run the specified command on the local computer. ! commandParameter

    command- Specifies the command to run on the local computer. If command isomitted, the local command prompt is displayed; type exit to return to ftp.

    [Back to top]

    ?Displays descriptions for ftp commands. ? is identical to help. ? [command]Parameter

    command- Specifies the name of the command about which you want a description. Ifcommand is not specified, ftp displays a list of all commands.

    [Back to top]

    appendAppends a local file to a file on the remote computer using the current file type setting. append local-file [remote-file]Parameters

    local-file - Specifies the local file to add.

    remote-file - Specifies the file on the remote computer to which local-file will be added.If remote-file is omitted, the local filename is used for the remote filename.

    [Back to top]

    asciiSets the file transfer type to ASCII, the default.

    asciiNote

    http://networking.ringofsaturn.com/Protocols/ftp.php#delete%23deletehttp://networking.ringofsaturn.com/Protocols/ftp.php#quote%23quotehttp://networking.ringofsaturn.com/Protocols/ftp.php#dir%23dirhttp://networking.ringofsaturn.com/Protocols/ftp.php#recv%23recvhttp://networking.ringofsaturn.com/Protocols/ftp.php#disconnect%23disconnecthttp://networking.ringofsaturn.com/Protocols/ftp.php#remotehelp%23remotehelphttp://networking.ringofsaturn.com/Protocols/ftp.php#get%23gethttp://networking.ringofsaturn.com/Protocols/ftp.php#rename%23renamehttp://networking.ringofsaturn.com/Protocols/ftp.php#glob%23globhttp://networking.ringofsaturn.com/Protocols/ftp.php#rmdir%23rmdirhttp://networking.ringofsaturn.com/Protocols/ftp.php#hash%23hashhttp://networking.ringofsaturn.com/Protocols/ftp.php#send%23sendhttp://networking.ringofsaturn.com/Protocols/ftp.php#help%23helphttp://networking.ringofsaturn.com/Protocols/ftp.php#status%23statushttp://networking.ringofsaturn.com/Protocols/ftp.php#lcd%23lcdhttp://networking.ringofsaturn.com/Protocols/ftp.php#trace%23tracehttp://networking.ringofsaturn.com/Protocols/ftp.php#literal%23literalhttp://networking.ringofsaturn.com/Protocols/ftp.php#type%23typehttp://networking.ringofsaturn.com/Protocols/ftp.php#ls%23lshttp://networking.ringofsaturn.com/Protocols/ftp.php#user%23userhttp://networking.ringofsaturn.com/Protocols/ftp.php#mdelete%23mdeletehttp://networking.ringofsaturn.com/Protocols/ftp.php#verbose%23verbosehttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#delete%23deletehttp://networking.ringofsaturn.com/Protocols/ftp.php#quote%23quotehttp://networking.ringofsaturn.com/Protocols/ftp.php#dir%23dirhttp://networking.ringofsaturn.com/Protocols/ftp.php#recv%23recvhttp://networking.ringofsaturn.com/Protocols/ftp.php#disconnect%23disconnecthttp://networking.ringofsaturn.com/Protocols/ftp.php#remotehelp%23remotehelphttp://networking.ringofsaturn.com/Protocols/ftp.php#get%23gethttp://networking.ringofsaturn.com/Protocols/ftp.php#rename%23renamehttp://networking.ringofsaturn.com/Protocols/ftp.php#glob%23globhttp://networking.ringofsaturn.com/Protocols/ftp.php#rmdir%23rmdirhttp://networking.ringofsaturn.com/Protocols/ftp.php#hash%23hashhttp://networking.ringofsaturn.com/Protocols/ftp.php#send%23sendhttp://networking.ringofsaturn.com/Protocols/ftp.php#help%23helphttp://networking.ringofsaturn.com/Protocols/ftp.php#status%23statushttp://networking.ringofsaturn.com/Protocols/ftp.php#lcd%23lcdhttp://networking.ringofsaturn.com/Protocols/ftp.php#trace%23tracehttp://networking.ringofsaturn.com/Protocols/ftp.php#literal%23literalhttp://networking.ringofsaturn.com/Protocols/ftp.php#type%23typehttp://networking.ringofsaturn.com/Protocols/ftp.php#ls%23lshttp://networking.ringofsaturn.com/Protocols/ftp.php#user%23userhttp://networking.ringofsaturn.com/Protocols/ftp.php#mdelete%23mdeletehttp://networking.ringofsaturn.com/Protocols/ftp.php#verbose%23verbosehttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23top
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    22/76

    FTP supports two file transfer types, ASCII and binary image. ASCII should be usedwhen transferring text files. See also binary.

    In ASCII mode, character conversions to and from the network standard character setare performed. For example, end-of-line characters are converted as necessary, basedon the target operating system.

    [Back to top]

    bellToggles a bell to ring after each file transfer command is completed. By default, the bell is off.

    bell[Back to top]

    binarySets the file transfer type to binary.

    binaryNote

    FTP supports two file transfer types, ASCII and binary image. Binary should be usedwhen transferring executable files. In binary mode, the file is moved byte-by-byte.

    See also ascii.[Back to top]

    byeEnds the FTP session with the remote computer and exits ftp. bye[Back to top]

    cdChanges the working directory on the remote computer. cd remote-directoryParameter

    remote-directory- Specifies the directory on the remote computer to change to.[Back to top]

    closeEnds the FTP session with the remote server and returns to the command interpreter. close[Back to top]

    debugToggles debugging. When debugging is on, each command sent to the remote computer isprinted, preceded by the string --->. By default, debugging is off. debug

    [Back to top]

    deleteDeletes files on remote computers. delete remote-fileParameter

    remote-file - Specifies the file to delete.[Back to top]

    http://networking.ringofsaturn.com/Protocols/ftp.php#binary%23binaryhttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#ascii%23asciihttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#binary%23binaryhttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#ascii%23asciihttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23top
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    23/76

    dirDisplays a list of a remote directory's files and subdirectories. dir[remote-directory] [local-file]Parameters

    remote-directory- Specifies the directory for which you want to see a listing. If nodirectory is specified, the current working directory on the remote computer is used.

    local-file - Specifies a local file to store the listing. If not specified, output is displayedon the screen.

    [Back to top]

    disconnectDisconnects from the remote computer, retaining the ftp prompt. disconnect[Back to top]

    getCopies a remote file to the local computer using the current file transfer type. get remote-file [local-file]

    Parametersremote-file - Specifies the remote file to copy.local-file - Specifies the name to use on the local computer. If not specified, the file isgiven the remote-file name.

    [Back to top]

    globToggles filename globbing. Globbing permits use of wildcard characters in local file or pathnames. By default, globbing is on. glob[Back to top]

    hashToggles hash-sign (#) printing for each data block transferred. The size of a data block is2048 bytes. By default, hash mark printing is off. hash[Back to top]

    helpDisplays descriptions for ftp commands. help [command]Parameter

    command- Specifies the name of the command about which you want a description. Ifcommand is not specified, ftp displays a list of all commands.

    [Back to top]

    lcdChanges the working directory on the local computer. By default, the working directory is thedirectory in which ftp was started. lcd [directory]Parameter

    directory- Specifies the directory on the local computer to change to. If directory isnot specified, the current working directory on the local computer is displayed.

    [Back to top]

    http://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23top
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    24/76

    literalSends arguments, verbatim, to the remote FTP server. A single FTP reply code is expected inreturn. literal argument [ ...]Parameter

    argument- Specifies the argument to send to the FTP server.

    [Back to top]

    lsDisplays an abbreviated list of a remote directory's files and subdirectories. ls [remote-directory] [local-file]Parameters

    remote-directory- Specifies the directory for which you want to see a listing. If nodirectory is specified, the current working directory on the remote computer is used.local-file - Specifies a local file to store the listing. If not specified, output is displayedon the screen.

    [Back to top]

    mdeleteDeletes files on remote computers. mdelete remote-files [ ...]Parameter

    remote-files - Specifies the remote files to delete.[Back to top]

    mdirDisplays a list of a remote directory's files and subdirectories. Mdir allows you to specifymultiple files. mdirremote-files [ ...] local-fileParameters

    remote-files - Specifies the directory for which you want to see a listing. Remote-filesmust be specified; type "-" (no quotes) to use the current working directory on theremote computer.local-file - Specifies a local file to store the listing. Type "-" (no quotes) to display thelisting on the screen.

    [Back to top]

    mgetCopies remote files to the local computer using the current file transfer type.

    mget remote-files [ ...]Parameter

    remote-files - Specifies the remote files to copy to the local computer.[Back to top]

    mkdirCreates a remote directory.

    mkdirdirectoryParameter

    directory- Specifies the name of the new remote directory.[Back to top]

    http://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23top
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    25/76

    mlsDisplays an abbreviated list of a remote directory's files and subdirectories. mls remote-files [ ...] local-fileParameters

    remote-files - Specifies the files for which you want to see a listing. Remote-files mustbe specified; type - to use the current working directory on the remote computer.

    local-file - Specifies a local file to store the listing. Type - to display the listing on thescreen.

    [Back to top]

    mputCopies local files to the remote computer using the current file transfer type. mput local-files [ ...]Parameter

    local-files - Specifies the local files to copy to the remote computer.[Back to top]

    open

    Connects to the specified FTP server. open computer [port]Parameters

    computer- Specifies the remote computer to connect to. Computer can be specified byIP address or computer name (a DNS or HOSTS file must be available). If auto-login ison (default), FTP also attempts to automatically log the user in to the FTP server (seeFtp to disable auto-login).

    port- Specifies a port number to use to contact an FTP server.[Back to top]

    promptToggles prompting to force interactive prompting on multiple commands. Ftp prompts duringmultiple file transfers to allow you to selectively retrieve or store files; mget and mput transferall files if prompting is turned off. By default, prompting is on. prompt[Back to top]

    putCopies a local file to the remote computer using the current file transfer type. put local-file[remote-file]Parameters

    local-file - Specifies the local file to copy.remote-file - Specifies the name to use on the remote computer. If not specified, thefile is given the local-file name.

    [Back to top]

    pwdDisplays the current directory on the remote computer. pwd[Back to top]

    quitEnds the FTP session with the remote computer and exits ftp. quit[Back to top]

    http://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23top
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    26/76

    quoteSends arguments, verbatim, to the remote FTP server. A single FTP reply code is expected inreturn. Quote is identical to literal. quote argument [ ...]Parameter

    argument- Specifies the argument to send to the FTP server.

    [Back to top]

    recvCopies a remote file to the local computer using the current file transfer type. Recv is identicalto get. recv remote-file [local-file]Parameters

    remote-file - Specifies the remote file to copy.local-file - Specifies the name to use on the local computer. If not specified, the file isgiven the remote-file name.

    [Back to top]

    remotehelpDisplays help for remote commands. remotehelp [command]Parameter

    command- Specifies the name of the command about which you want help. Ifcommand is not specified, ftp displays a list of all remote commands.

    [Back to top]

    renameRenames remote files. rename filename newfilenameParameters

    filename - Specifies the file you want to rename.newfilename - Specifies the new filename.

    [Back to top]

    rmdirDeletes a remote directory. rmdirdirectoryParameter

    directory- Specifies the name of the remote directory to delete.[Back to top]

    sendCopies a local file to the remote computer using the current file transfer type. Send is identicalto put. send local-file [remote-file]Parameters

    local-file - Specifies the local file to copy.remote-file - Specifies the name to use on the remote computer. If not specified, thefile is given the local-file name.

    [Back to top]

    http://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23top
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    27/76

    statusDisplays the current status of FTP connections and toggles. status[Back to top]

    traceToggles packet tracing; trace displays the route of each packet when running an ftp command. trace[Back to top]

    typeSets or displays the file transfer type.

    type [type-name]Parameter

    type-name - Specifies the file transfer type; the default is ASCII. If type-name is notspecified, the current type is displayed.

    NotesFTP supports two file transfer types, ASCII and binary image.

    ASCII should be used when transferring text files. In ASCII mode, characterconversions to and from the network standard character set are performed. Forexample, end-of-line characters are converted as necessary, based on thedestination's operating system.Binary should be used when transferring executable files. In binary mode, the file ismoved byte-by-byte.

    See Also : ascii binary

    [Back to top]

    userSpecifes a user to the remote computer. useruser-name [password] [account]Parameters

    user-name - Specifies a user name with which to log in to the remote computer.password- Specifies the password for user-name. If not specified, but required, ftpprompts for the password.account- Specifies an account with which to log on to the remote computer. If accountis not specified, but required, ftp prompts for the account.

    [Back to top]

    verboseToggles verbose mode. If on, all ftp responses are displayed; when a file transfer completes,statistics regarding the efficiency of the transfer are also displayed. By default, verbose is on. verbose

    Hyper Text Transfer ProtocolReprinted by permission from Matt Musselman

    Table of Contents

    Error Codes and Their Meanings

    Method Names and Their Meanings

    For More Information

    http://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#ascii%23asciihttp://networking.ringofsaturn.com/Protocols/ftp.php#binary%23binaryhttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/http.php#Errors%23Errorshttp://networking.ringofsaturn.com/Protocols/http.php#Methods%23Methodshttp://networking.ringofsaturn.com/Protocols/http.php#Info%23Infohttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#ascii%23asciihttp://networking.ringofsaturn.com/Protocols/ftp.php#binary%23binaryhttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/ftp.php#top%23tophttp://networking.ringofsaturn.com/Protocols/http.php#Errors%23Errorshttp://networking.ringofsaturn.com/Protocols/http.php#Methods%23Methodshttp://networking.ringofsaturn.com/Protocols/http.php#Info%23Info
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    28/76

    HTTP Error Codes and Their Meanings

    ErrorNumber

    Name Method Description

    200 OK GET, HEADDocument was successfullytransferred. No error.

    201 Created POST, PUT POST or PUT was successful. No error.

    202 AcceptedGET, HEAD,DELETE,POST, PUT

    Request was accepted without error,but the request will be processedlater.

    203ProvisionalInformation

    GET, HEAD,POST

    Request succesful, but responseconsists of cached or non-authoritative information

    204 No ResponseGET, HEAD,POST

    Request was successful, but there isno data to send

    205 Deleted DELETEDocument will be deleted asrequested

    206 Modified PUTDocument will be modified asrequested

    301MovedPermanently

    GET, HEAD,POST, PUT

    Document has a new permanent URI.Browsers with support redirectionshould direct future requests to thenew URI

    302MovedTemporarily

    GET, HEAD,POST, PUT

    Document has temporarily moved to anew URI. Browser should redirect thisrequest to the new URI, but futurerequests should still try the original

    URI first.

    304 Not Modified GETDocument has not changed since thedate and time specified in the If-Modified-Since field.

    400 Bad Request

    401 Unauthorized

    Username and password do

    not match with an allowedusername and password for aprotected directory

    Encryption failure

    403 Forbidden

    File requested is not readable

    by user nobody

    Access to the file, directory, or

    index is prohibited inaccess.conf or httpd.conf

    404 Not Found Requested file or directory does not

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    29/76

    exist

    500Internal ServerError

    HTTP header error

    Executable content generated

    an error on the server

    501NotImplemented

    Object does not support the HTTPmethod used (e.g. POST instead ofGET)

    502ServiceTemporarilyOverloaded

    httpd is unable to spawn a childprocess to handle the request, eitherbecause the system is out ofresources, or in accordance withconfiguration constraints

    503ServiceUnavailable

    A timeout occurred while waiting for aresponse from the port specified

    HTTP Methods

    Method Implementations Description Cached?

    GET

    "Standard"

    Hypertextdocumentviewing

    Read only CGI

    applications(URL based)

    Search engines

    A GET request will cause the server to respondwith the entire header and body of thedocument specified. The URI may also includequery information which can be utilized by CGIto customize the information presented or tosearch for particular information.

    While it is possible to pass write data to anapplication via GET, the practice is not

    recommended as it poses significant securityrisks, since URI information can easily bemanipulated by the end-user.

    Yes.

    PUT

    Some web

    publishingapplications,including MSFrontPage

    A PUT request will cause the object body datato be saved to the URI location specified. Somepublishing implementations, most notoriouslyMicrosoft FrontPage, use this as an alternativeto FTP for publishing web content. Obviously,the server must be specifically configured toallow PUT requests, since they are disabled bydefault for security reasons.

    POST Read/write CGI

    applications(form based)

    The POST method passes the object body datato the application at the specified URI forprocessing. This is the preferred method forpassing write data to the server, since itcannot be easily manipulated.

    Never.

    DELETE Some web

    publishingapplications

    No.

    HEAD Web caching The HEAD method will cause the server to Ideally

  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    30/76

    servers

    Search engines

    Link validationsoftware

    response with the header information for thedocument without the Object Body information.Compare to GET, which elicits a responsecontaining both header and body information.

    Via the information returned from a HEAD

    request, a web cache or validation tool canverify that a document exists and determinewhether it has been updated since it was lastretrieved.

    not.

    OPTIONS Unknown

    The OPTIONS method causes the server torespond with the options of what can beperformed on the specified document.OPTIONS is very rarely implemented on mostservers, and usually elicits an Error 500(Internal Server Error)

    No.

    LINK

    UNLINK

    TRACE

    Server

    managementsoftware

    Manual HTTP

    troubleshooting

    When a server receives a TRACEcommand/method, it will respond with the text'TRACE' to indicate that it is functioningproperly. The TRACE method is HTTP's roughequivalent to the layer 3 ping command.

    Also, when a TRACE is issued, all proxies andcaching servers along the path will insert theirinformation into the Via header field, so thatupon deeper analysis, the entity whichsubmitted the TRACE can identify if and wheresuch equipment exists along the network path.

    Internet Control Message Protocol

    Internet Control Message Protocol (ICMP), documented in RFC 792, is a required protocoltightly integrated with IP. ICMP messages, delivered in IP packets, are used for out-of-bandmessages related to network operation or mis-operation. Of course, since ICMP uses IP, ICMPpacket delivery is unreliable, so hosts can't count on receiving ICMP packets for any networkproblem.

    Some of ICMP's functions are to:

    Announce network errors, such as a host or entire portion of the network being

    unreachable, due to some type of failure. A TCP or UDP packet directed at a port

    number with no receiver attached is also reported via ICMP.

    Announce network congestion. When a router begins buffering too many packets, due

    to an inability to transmit them as fast as they are being received, it will generateICMP Source Quench messages. Directed at the sender, these messages should causethe rate of packet transmission to be slowed. Of course, generating too many SourceQuench messages would cause even more network congestion, so they are usedsparingly.

    Assist Troubleshooting. ICMP supports an Echo function, which just sends a packet on

    a round--trip between two hosts. Ping, a common network management tool, is based

    ftp://ftp.isi.edu/in-notes/rfc792.txthttp://networking.ringofsaturn.com/Protocols/ping.phpftp://ftp.isi.edu/in-notes/rfc792.txthttp://networking.ringofsaturn.com/Protocols/ping.php
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    31/76

    on this feature. Ping will transmit a series of packets, measuring average round--triptimes and computing loss percentages.

    Announce Timeouts. If an IP packet's TTL field drops to zero, the router discarding the

    packet will often generate an ICMP packet announcing this fact. Tracerouteis a toolwhich maps network routes by sending packets with small TTL values and watchingthe ICMP timeout announcements.

    IP Protocol Overview

    IP is the Internet's most basic protocol. In order to function in a TCP/IP network, a networksegment's only requirement is to forward IP packets. In fact, a TCP/IP network can be definedas a communication medium that can transport IP packets. Almost all other TCP/IP functionsare constructed by layering atop IP. IP is documented in RFC 791, and IP broadcastingprocedures are discussed in RFC 919.

    IP is a datagram-oriented protocol, treating each packet independently. This means eachpacket must contain complete addressing information. Also, IP makes no attempt to determineif packets reach their destination or to take corrective action if they do not. Nor does IPchecksum the contents of a packet, only the IP header.

    IP provides several services:

    Addressing. IP headers contain 32-bit addresses which identify the sending and

    receiving hosts. These addresses are used by intermediate routers to select a paththrough the network for the packet.

    Fragmentation. IP packets may be split, or fragmented, into smaller packets. This

    permits a large packet to travel across a network which can only handle smallerpackets. IP fragments and reassembles packets transparently.

    Packet timeouts. Each IP packet contains a Time To Live (TTL) field, which is

    decremented every time a router handles the packet. If TTL reaches zero, the packetis discarded, preventing packets from running in circles forever and flooding a

    network. Type of Service. IP supports traffic prioritization by allowing packets to be labeled with

    an abstract type of service.

    Options. IP provides several optional features, allowing a packet's sender to set

    requirements on the path it takes through the network (source routing), trace theroute a packet takes (record route), and label packets with security features

    ISDN

    Table of Contents

    Integrated Services Digital Network

    I.430 Protocol

    Q.921 Protocol

    Q.931 Protocol

    G.711 Protocol

    Integrated Services Digital Network

    Integrated Services Digital Network (ISDN) is essentially digital telephone service. ISDNenvisions telephone companies providing "Integrated Services," capable of handling voice,

    http://networking.ringofsaturn.com/Tools/traceroute.phphttp://networking.ringofsaturn.com/Tools/traceroute.phpftp://ftp.isi.edu/in-notes/rfc791.txtftp://ftp.isi.edu/in-notes/rfc919.txthttp://networking.ringofsaturn.com/Protocols/ISDN.php#_ISDN%23_ISDNhttp://networking.ringofsaturn.com/Protocols/ISDN.php#_I430%23_I430http://networking.ringofsaturn.com/Protocols/ISDN.php#_I430%23_I430http://networking.ringofsaturn.com/Protocols/ISDN.php#_Q921%23_Q921http://networking.ringofsaturn.com/Protocols/ISDN.php#_Q921%23_Q921http://networking.ringofsaturn.com/Protocols/ISDN.php#_Q931%23_Q931http://networking.ringofsaturn.com/Protocols/ISDN.php#_Q931%23_Q931http://networking.ringofsaturn.com/Protocols/ISDN.php#_G711%23_G711http://networking.ringofsaturn.com/Protocols/ISDN.php#_G711%23_G711http://networking.ringofsaturn.com/Tools/traceroute.phpftp://ftp.isi.edu/in-notes/rfc791.txtftp://ftp.isi.edu/in-notes/rfc919.txthttp://networking.ringofsaturn.com/Protocols/ISDN.php#_ISDN%23_ISDNhttp://networking.ringofsaturn.com/Protocols/ISDN.php#_I430%23_I430http://networking.ringofsaturn.com/Protocols/ISDN.php#_Q921%23_Q921http://networking.ringofsaturn.com/Protocols/ISDN.php#_Q931%23_Q931http://networking.ringofsaturn.com/Protocols/ISDN.php#_G711%23_G711
  • 8/22/2019 Address Resolution Protocol(Mot So Khai Niem)

    32/76