• Aucun résultat trouvé

TCP/IP Architecture

Dans le document Using 3174 TCP/IP Networks (Page 32-36)

This section briefly describes the TCP/IP architectural layers supported by the 3174 TCP/IP Telnet Support.

The internet protocols are modeled into four functional layers:

• Application

This is a user process cooperating with another process on the same or different host.

• Transport

This layer provides the end-to-end data transfer.

• Internetwork

This layer provides the "virtual network" image of internet and shields the higher levels from the network architecture below it. It is probably the most important protocol.

• Network Interface

This layer is the interface to the actual network hardware.

1.3.1 Transmission Control Protocol (Tep)

Most of the user application protocols, such as Telnet and FTP, use TCP as the underlying protocol. TCP is a connection-oriented, end-to-end reliable protocol providing logical connections between pairs of processes.

For applications making use of this protocol, TCP provides the following:

• Stream data transfer

Chapter 1. An Introduction to 3174 TCPIIP Support 3

From the application's viewpoint, TCP transfers a contiguous stream of bytes through the internet. First it groups the data into TCP segments, before passing the segments to IP for transmission to its destination.

• Reliability

TCP assigns a sequence number to each transmitted byte and expects a positive acknowledgment (ACK) from the receiving TCP. If the ACK is not received within a timeout interval, the data is retransmitted.

• Flow control

The receiving TCP, when sending an ACK back to the sender, indicates to the sender the number of bytes it can receive beyond the last received TCP segment, without causing overruns or overflows.

• Multiplexing

With this technique datagrams are directed through the use of ports.

• Logical connections

The reliability and flow control mechanism described above requires that TCPs initialize and maintain certain status information for each "data stream." The combination of this status, including sockets, sequence numbers and window sizes, is called a logical connection (or virtual circuit).

Each connection is uniquely identified by the pair of sockets used by the sending and receiving process.

• Full-duplex

TCP provides for concurrent data streams in both directions.

connections

sockets reliable

T C P + - - - ....

'---+---' TCP connect i on '---+---'

T C P

IP addresses unreliable IP datagrams

host A host B

Figure 1.

rcp

Logical Connections

Establishing a TCP Connection

Before any data can be transferred, a connection has to be established between the two processes. One of the processes issues a "passive OPEN" call, the other an "active OPEN" call. The passive OPEN call remains dormant until another process tries to connect to it by an active OPEN.

1.3.2 Telnet

Process 1

Active OPEN

Process 2

passive OPEN, waits for an active response

Send SYN, seq=n ---~

Receive SYN

+ 4 1 - - - - Send SYN, seq=m, ACK n+l Receive SYN+ACK

Send ACK m+l

The connection is now established and the two data streams (one in each direction) have been initialized (sequence numbers).

Figure 2.

rcp

Connection Establishment

This whole process is known as a three-way handshake. Note that the

exchanged TCP segments include the initial sequence numbers from both sides to be used on subsequent data transfers.

Closing the connection is done implicitly by sending a TCP segment with the FIN bit set (no more TCP data). As the connection is full-duplex (two independent data streams, one in each direction), the FIN segment only closes the data transfer in one direction. The other process will now send the remaining data it still has to transmit and also ends with the TCP segment where the FIN bit is set.

The connection is deleted once the data stream is closed in both directions.

The Telnet protocol provides a standardized interface, which allows a program on one host (the Telnet client) to access the resources of another host (the Telnet server). One example of this would be an ASCII device on an ASCII host accessing an S/390 application with TCP/IP installed. Another example would be a 3270 CUT display attached to a 3174 with Configuration Support-C Release 3 installed and customized for TCP/IP Telnet support, accessing a RISC

System/6000· (or other TCP/IP Telnet server).

1.3.3 Internet Protocol (lP)

The Internet Protocol is the layer that hides the underlying physical network by creating a virtual network view. This is a connectionless protocol and hence offers no reliability, flow control or error recovery.

IP uses addresses to identify the source and target hosts on the internet. The internet (IP) address is 32 bits long and consists of two parts:

IP address

=

< network address> < host address>

The network part of the IP address identifies the network within the internet; the host part of the IP address identifies the individual host or gateway within that network. The division between the network and host parts of the IP address is determined by the first one to four bits of the IP address (see 3.1, HIP Addresses"

on page 19).

The 32-bit IP address is usually represented in dotted decimal form w.x.y.z (for example, 9.67.38.87) for easy reference.

Chapter 1. An Introduction to 3174 TCP/IP Support 5

1.3.4 Internet Control Messaging Protocol (ICMP)

ICMP is a standard protocol. The IP is used for datagram services in an

interconnected set of networks (internets). The network connection devices are IP gateways that exchange routing information between themselves using special TCP/IP protocols. ICMP 'functions are characterized as:

• ICMP uses IP as if it were a higher-level protocol. It is also an integral part of IP and is implemented in every IP module.

• ICMP is used to report errors found during datagram processing, and is used by:

The gateway

- The destination host

1.3.5 User Datagram Protocol (UDP)

UDP is an application interface to IP. It serves as a "multiplexer/demultiplexer"

for sending and receiving IP datagrams, using ports to direct the datagrams.

U D P : port demultiplexing

I P

Figure 3. Using Ports to Direct Datagrams Standard applications using UDP are:

• Trivial File Transfer Protocol

• Host Name Server and Domain Name Server

• Remote Procedure Call, used by Network File System (NFS)

• Network Computing System

• Simple Network Management Protocol (SNMP)

1.3.6 Address Resolution Protocol (ARP)

The ARP is responsible for converting the higher-level protocol addresses (IP addresses) to physical network addresses. On a single physical network, individual hosts are known on the network by their physical hardware address.

Higher-level protocols address a destination host in the form of a symbolic address (IP address in the internet environment). 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.

Hence, ARP is used to translate this high-level address to the physical address of the destination host. ARP use.s a lookup table to perform this translation.

When an address is not found, a broadcast, known as an "ARP request," is sent

address, an "ARP reply" is sent back to the requesting host with the physical hardware address of the host and source route information. This is then stored for future use.

1.3.7 Simple Network Management Protocol (SNMP)

SNMP is used to communicate management information between the network management stations and the agents in the network elements.

1.3.8 Domain Name System

The Domain Name System, through the use of a server application, provides the translation between high-level machine names and the IP addresses. The client function (called the resolver) is transparent to the user and is called by most of the other applications to resolve the symbolic high-level names into real IP addresses.

1.3.9 Packet Internet Groper (PING)

PING is an application that sends out an ICMP datagram to a specified

destination and waits for its return. The server counterpart merely echoes the frame it receives back to the originator. PING, therefore, can be used to determine if the destination host can be reached, that is, to check the connectivity path between two machines.

1.3.10 TCP/IP Gateways

Gateways interconnect multiple networks to form an internet. In the IBM*

environment we use the following definitions for bridges, routers and gateways:

• Bridge

A bridge interconnects LAN segments at the data link layer and forwards frames between them. It performs the function of a MAC relay and is independent of any higher layer protocols.

• Router

A router interconnects networks at the network layer and route packets between them. Because it needs to understand the network addressing schemes used, a router is protocol-dependent. Routers are able to optimize packet sizes and transmission paths.

• Gateway

A gateway interconnects networks at higher layers than bridges or routers, ranging from the network layer to the application layer. It usually supports address mapping from one network to another~

In the TCP/IP environment, the terms "gateway" and "internet gateway" are used to qualify what is defined above as being a router.

Dans le document Using 3174 TCP/IP Networks (Page 32-36)

Documents relatifs