Friday 1 January 2016

SMU ASSIGNMENT TCP/IP BSC IT 3RD SEM

                                                    [ FALL 2015 ] ASSIGNMENT
PROGRAM
BSC IT
SEMESTER
THIRD
SUBJECT CODE &
NAME
BT0076, TCP/IP

Q. No. 1. Write short note on:
1. Gigabit Ethernet
2. Fiber Distributed Data Interface (FDDI)
Answer: Gigabit Ethernet
As advances in hardware continue to provide faster transmissions across networks, Ethernet implementations have improved in order to capitalize on the faster speeds. Fast Ethernet increased the speed of traditional Ethernet from 10 megabits per second (Mbps) to 100 Mbps. This was further augmented to 1000 Mbps in June of 1998, when the IEEE defined the standard for Gigabit Ethernet (IEEE 802.3z). Finally, in 2005, IEEE created the 802.3-2005 standard introduced 10 Gigabit Ethernet, also referred to as 10GbE. 10GbE provides transmission speeds of 10 gigabits per second (Gbps), or 10000 Mbps, 10 times the speed of Gigabit Ethernet. However, due to the novelty of 10GbE, there are still limitations on the adapters over which 10GbE can be used, and no one implementation standard has yet gained commercial acceptance.
Fiber Distributed Data Interface (FDDI)
The FDDI specifications define a family of standards for 100 Mbps fiber optic LANs that provides the physical layer and media access control sub-layer of the data link layer, as defined by the ISO/OSI Model. Proposed initially by draft-standard RFC 1188, IP and ARP over FDDI networks became a standard in RFC 1390. It defines the encapsulating of IP datagrams and ARP requests and replies in FDDI frames. RFC 2467 extended this standard in order to allow the transmission of IPv6 packets over FDDI networks. Operation on dual MAC stations is described in informational RFC 1329. Fig. shows the related protocol layers.
The 24-bit Organization Code in the SNAP header is set to zero, and the remaining 16 bits are the EtherType (used to indicate which protocol is being transported in an Ethernet frame) from Assigned Numbers, that is: 2048 for IP and 2054 for ARP. The mapping of 32-bit Internet addresses to 48-bit FDDI addresses is done through the ARP dynamic discovery procedure. The broadcast Internet addresses (whose host address is set to all ones) are mapped to the broadcast FDDI address (all ones). IP datagrams are transmitted as series of 8-bit bytes using the usual TCP/IP transmission order called big-endian or network byte order. The FDDI MAC specification (ISO 9314-2 - ISO, Fiber Distributed Data Interface Media Access Control) defines a maximum frame size of 4500 bytes for all frame fields. After taking the LLC/SNAP header into account, and to allow future extensions to the MAC header and frame status fields, the MTU of FDDI networks is set to 4352 bytes.


Q. No. 2. Define and explain address resolution protocol (ARP).Describe ARP packet generation.
Answer: Address Resolution Protocol (ARP) is a network-specific standard protocol. The address resolution protocol is responsible for converting the higher-level protocol addresses (IP addresses) to physical network addresses. It is described in RFC 826.
On a single physical network, individual hosts are known in the network by their physical hardware address. Higher-level protocols address destination hosts in the form of a symbolic address (IP address in this case). When such a protocol wants to send a datagram to destination IP address w.x.y.z, the device driver does not understand this address. Therefore, a module (ARP) is provided that will translate the IP address to the physical address of the destination host. It uses a lookup table (sometimes referred to as the ARP cache) to perform this translation. When the address is not found in the ARP cache, a broadcast is sent out in the network with a special format called the ARP request. If one of the machines in the network recognizes its own IP address in the request, it will send an ARPreply back to the requesting host. The reply will contain the physical hardware address of the host and source route information (if the packet has crossed bridges on its path). Both this address and the source route information are stored in the ARP cache of the requesting host.
ARP is used on IEEE 802 networks as well as on the older DIX Ethernet networks to map IP addresses to physical hardware. To do this, it is closely related to the device driver for that network. In fact, the ARP specifications in RFC 826 only describe its functionality, not its implementation. The implementation depends to a large extent on the device driver for a network type and they are usually coded together in the adapter microcode.
ARP Packet Generation
If an application wants to send data to a certain IP destination address, the IP routing mechanism first determines the IP address of the next hop of the packet (it can be the destination host itself, or a router) and the hardware device on which it should be sent. If it is an IEEE 802.3/4/5 network, the ARP module must be consulted to map the <protocol type, target protocol address> to a physical address.
The ARP module tries to find the address in this ARP cache. If it finds the matching pair, it gives the corresponding 48-bit physical address back to the caller (the device driver), which then transmits the packet. If it does not find the pair in its table, it discards the packet (the assumption is that a higher-level protocol will retransmit) and generates a network broadcast of an ARP request.
See Fig for more details.

clip_image048
Fig.: ARP: Request/reply packet
Hardware address space: Specifies the type of hardware; examples are Ethernet or Packet Radio Net.
Protocol address space: Specifies the type of protocol, same as the EtherType field in the IEEE 802 header (IP or ARP).
Hardware address length: Specifies the length (in bytes) of the hardware addresses in this packet. For IEEE 802.3 and IEEE 802.5, this is 6.
Protocol address length: Specifies the length (in bytes) of the protocol addresses in this packet. For IP, this is 4.
Operation code: Specifies whether this is an ARP request (1) or reply (2).
Source/target hardware address: Contains the physical network hardware addresses. For IEEE 802.3, these are 48-bit addresses.
Source/target protocol address: Contains the protocol addresses. For TCP/IP, these are the 32-bit IP addresses. For the ARP request packet, the target hardware address is the only undefined field in the packet.

Q. No. 3. What is the use of TCP congestion control algorithm? Explain slow start TCP Congestion Control Algorithm.
Answer:The TCP congestion algorithm prevents a sender from overrunning the capacity of the network (for example, slower WAN links). TCP can adapt the sender's rate to network capacity and attempt to avoid potential congestion situations. In order to understand the difference between TCP and UDP, understanding basic TCP congestion control algorithms is very helpful. Several congestion control enhancements have been added and suggested to TCP over the years. This is still an active and ongoing research area, but modern implementations of TCP contain four intertwined algorithms as basic Internet standards:
v  Slow start
v  Congestion avoidance
v  Fast retransmit
v  Fast recovery
Slow Start: Old implementations of TCP start a connection with the sender injecting multiplesegments into the network, up to the window size advertised by the receiver.Although this is OK when the two hosts are on the same LAN, if there are routersand slower links between the sender and the receiver, problems can arise. Someintermediate routers cannot handle it, packets get dropped, and retransmissionresults and performance is degraded.The algorithm to avoid this is called slow start. It operates by observing that therate at which new packets should be injected into the network is the rate at whichthe acknowledgments are returned by the other end. Slow start adds anotherwindow to the sender's TCP: the congestion window, called cwnd. When a newconnection is established with a host on another network, the congestion windowis initialized to one segment (for example, the segment size announced by theother end, or the default, typically 536 or 512).
The sender starts by transmitting one segment and waiting for its ACK. When that ACK is received, the congestion window is incremented from one to two, and two segments can be sent. When each of those two segments is acknowledged, the congestion window is increased to four. This provides an exponential growth, although it is not exactly exponential, because the receiver might delay its ACKs, typically sending one ACK for every two segments that it receives.
At some point, the capacity of the IP network (for example, slower WAN links) can be reached, and an intermediate router will start discarding packets. This tells the sender that its congestion window has gotten too large. See Fig. for an overview of slow start in action.
Congestion Avoidance: The assumption of the algorithm is that packet loss caused by damage is verysmall (much less than 1%). Therefore, the loss of a packet signals congestionsomewhere in the network between the source and destination. There are two indications of packet loss:
v  A timeout occurs.
v  ACKs are received.
Congestion avoidance and slow start are independent algorithms with different objectives. But when congestion occurs, TCP must slow down its transmission rate of packets into the network and invoke slow start to get things going again. In practice, they are implemented together.

clip_image040
Congestion avoidance and slow start require that two variables be maintained for each connection:
v  A congestion window, cwnd
v  A slow start threshold size, ssthresh
The combined algorithm operates as follows:
1. Initialization for a given connection sets cwnd to one segment and ssthresh to 65535 bytes.
2. The TCP output routine never sends more than the lower value of cwnd or the receiver's advertised window.
3. When congestion occurs (timeout or duplicate ACK), one-half of the current window size is saved in ssthresh. Additionally, if the congestion is indicated by a timeout, cwnd is set to one segment.
4. When new data is acknowledged by the other end, increase cwnd, but the way it increases depends on whether TCP is performing slow start or congestion avoidance. If cwnd is less than or equal to ssthresh, TCP is in slow start; otherwise, TCP is performing congestion avoidance.
Slow start continues until TCP is halfway to where it was when congestion occurred (since it recorded half of the window size that caused the problem in step 2), and then congestion avoidance takes over. Slow start has cwnd begin at one segment, and incremented by one segment every time an ACK is received. As mentioned earlier, this opens the window exponentially: send one segment, then two, then four, and so on. Congestion avoidance dictates that cwnd be incremented by segsize*segsize / cwnd each time an ACK is received, where segsize is the segment size and cwnd is maintained in bytes. This is a linear growth of cwnd, compared to slow start's exponential growth. The increase in cwnd should be at most one segment each round-trip time (regardless of how many ACKs are received in that round-trip time), while slow start increments cwnd by the number of ACKs received in a round-trip time. Many implementations incorrectly add a small fraction of the segment size (typically the segment size divided by 8) during congestion avoidance. This is wrong and should not be emulated in future releases. See Fig. for an example of TCP slow start and congestion avoidance in action.
clip_image042

Q. No. 4. Write note on:
1. The Hierarchical Namespace
2. Fully Qualified Domain Names (FQDNs)
Answer: The Hierarchical Namespace:
Consider the typical internal structure of a large organization. Because the chief executive cannot do everything, the organization will probably be partitioned into divisions, each of them having autonomy within certain limits. Specifically, the executive in charge of a division has authority to make direct decisions, without permission from the chief executive Domain names which are formed in a similar way, and will often reflect the hierarchical delegation of authority used to assign them. For example, consider the name: myHost.myDept.myDiv.myCorp.com.
In this example, we know that there is a single host name myHost, which exists within the myDept.myDiv.myCorp subdomain. The myDept.myDiv.myCorp subdomain is one of the subdomains of myDiv.myCorp.com subdomain, which is in turn one of the subdomains of myCorp.com. Finally, myCorp.com is a subdomain of com. This hierarchy is better illustrated in Fig.

clip_image002
                                 FIG. DNS Hierarchical Namespace

Fully Qualified Domain Names (FQDNs)
When using the Domain Name System, it is common to work with only a part of the domain hierarchy, such as the myDivision.myCorp.com domain. The Domain Name System provides a simple method of minimizing the typing necessary in this circumstance. If a domain name ends in a dot (for example, myDept.myDiv.myCorp.com.), it is assumed to be complete. This is called a fullyqualified domain name (FQDN) or an absolute domain name. However, if it does not end in a dot (for example, myDept.myDiv), it is incomplete and the DNS resolver may complete this by appending a suffix such as .myCorp.com to the domain name. The rules for doing this are implementation-dependent and locally configurable.
Generic Domains
The top-level names are called the generic Top-Level Domains (gTLDs), and can be three characters or more in length. Table shows some of the top-level domains of today's Internet domain namespace.
Table 1 Current Generic Domains:

Domains name
Meaning
aero
The air transport industry
biz
Business use
cat
The Catalan culture
com
Commercial organizations
coop
Cooperatives
edu
Educational organization
gov
U.S. governmental agencies
Info
Informational sites
int
International organization
jobs
Employment sites
mil
The U.S. military
mobi
Mobile devices sites
museum
Museums

These names are registered with and maintained by the Internet Corporation for Assigned Names and Numbers (ICANN).
Country Domains
There are also top-level domains named for the each of the ISO 3166 international 2-character country codes (from ae for the United Arab Emirates to zw for Zimbabwe). These are called the country domains or the geographical domains. Many countries have their own second-level domains underneath which parallel the generic top-level domains. For example, in the United Kingdom, the domains equivalent to the generic domains .com and .edu are .co.uk and .ac.uk (ac is an abbreviation for academic). There is a .us top-level domain, which is organized geographically by state (for example, .ny.us refers to the state of New York). See RFC 1480 for a detailed description of the .us domain.

Q. No. 5. Define Remote Execution Command Protocol (REXEC andRSH). Explain its principle of operation.
Answer: Remote Execution Command Daemon (REXECD) is a server that allows the execution of jobs submitted from a remote host over the TCP/IP network. The client uses the REXEC or Remote Shell Protocol (RSH) command to transfer the job across to the server. Any standard output or error output is sent back to the client for display or further processing.

Principle of Operation
REXECD is a server (or daemon). It handles commands issued by foreign hosts and transfers orders to subordinate virtual machines for job execution. The daemon performs automatic login and user authentication when a user ID and password are entered. The REXEC command is used to define the user ID, password, host address, and the process to be started on the remote host. However, RSH does not require you to send a user name and password; it uses a host access file instead. Both server and client are linked over the TCP/IP network. REXEC uses TCP port 512 and RSH uses TCP port 514. See Fig. for more details.
clip_image012
REXEC : REXECD PRINCIPLE

Q. No. 6. Explain the following in context of HTTP:
1. HTTP protocol parameters
2. HTTP message
3. Request
4. Response
Answer:Protocol parameters: We provide some of the HTTP protocol parameters here.
v  HTTP version: HTTP uses a <major>.<minor> numbering scheme to indicate the versions of the protocol. The furthermost connection is performed according to the protocol versioning policy. The <major> number is incremented when there are significant changes in protocol, such as changing a message format. The <minor> number is incremented when the changes do not affect the message format. The version of HTTP messages is sent by an HTTP-Version field in the first line of the message. The HTTP-Version field is in the following format: HTTP-Version = "HTTP" "/" 1*DIGIT "." 1*DIGIT
v  Uniform Resource Identifiers (URIs): Uniform Resource Identifiers are generally referred to as WWW addresses and a combination of Uniform Resource Locators (URLs) and Uniform Resource Names (URNs). In fact, URIs are strings that indicate the location and name of the source on the server.
v  HTTP URL: The HTTP URL scheme enables you to locate network resources through the HTTP protocol. It is based on the URI Generic Syntax and described in RFC 3986. The general syntax of a URL scheme is: HTTP_URL = "http" "//" host [ ":" port ] [ abs_path ]. The port number is optional. If it is not specified, the default value is 80.
HTTP message: HTTP messages consist of the following fields:
v  Message types: A HTTP message can be either a client request or a server response. The following string indicates the HTTP message type:
v  HTTP-message = Request | Response
v  Message header: The HTTP message header field can be one of the following:
- General header
- Request header
- Response header
- Entity header
v   Message body: Message body can be referred to as entity body if there is no transfer coding has been applied. Message body simply carries the entity body of the relevant request or response.
v  Message length Message length indicates the length of the message body if it is included.
v  General header field: General header fields can apply both request and response messages. Currently defined general header field options are as follows:
- Cache-Control
- Connection
- Date
- Pragma
- Transfer-Encoding
- Upgrade
- Via
Request: A request message from a client to a server includes the method to be applied tothe resource, the identifier of the source, and the protocol version in use. Arequest message field is as follows:
Request = Request-Line
*( general-header | request-header | entity-header )
CRLF
[ message-body ]
Response: An HTTP server returns a response after evaluating the client request. Aresponse message field is as follows:
Request = Request-Line
*( general-header | request-header | entity-header )
CRLF
[ message-body ]

1 comment:

  1. Blackjack at the Hard Rock Casino - Mapyro
    Enjoy 토토 사이트 모음 the fun of Blackjack at the Hard Rock Casino in Las Vegas, NV. See activity, reviews and information for Blackjack at the 화성 출장마사지 Hard 용인 출장마사지 Rock Casino 순천 출장샵 in Las Vegas, 제주 출장샵

    ReplyDelete