Q & A on The Relationship between Protocol Layers and Modality

These questions interrelate the five levels of protocols in the TCP/IP stack, the two 'modalities' of communication: connection-oriented (CO) and connectionless (CL), and the multitude of network graph edges that a communication might traverse.

Q: In general, do lower level protocols of the TCP/IP stack dictate the choice of higher level protocols with respect to connection-oriented or connectionless protocol choice?

A counterexample to such a claim seems to be illustrated by a dial-in session (connection-oriented) in which email is sent (which is decomposed into packets - a manifestation of connectionless).

OR, stating the question another way: Can we mix and match amongst the layers in a given pursuit with respect to modality?

A: In general connection-oriented (CO) and connectionless (CL) modes are provided in two layers: the hardware layer and the transport layer. TCP/IP assumes that IP is the single, required concentration point - one can have either CO or CL transport services above IP, and IP can use either CL or CO networks to send packets. This is sometimes called the "uniform middle". So, when you dial up, you are running IP over a CO network.

It seems that a combination of modalities might be permitted as indicated by the statement in Vol. 3 p.13 that programmers must "choose" between a connectionless style (using UDP) and a connection oriented style (TCP). Moreover, any user of FTP (connection oriented or connectionless user), is participating in (2) connections by virtue of the definition of FTP.

Yes, FTP uses a CO transport (i.e., TCP). So, the application sees a CO interface. However, TCP uses IP, which is CL. So, TCP must divide data into segments for transmission, place each segment in an IP datagram, and then send the datagrams across the underlying internetwork.

Q: Can a host participate in both circuit switching communication and packet switching communication if it is endowed with hardware that supports both of these?

A: Yes, if a host has multiple network connections. A host with multiple connections is known as "multi-homed".

Q: Does a host usually only possess hardware for one of these?

A: Yes, most hosts are singly-homed.

Q: What dictates the modality of a communication: hardware choice, protocol choice, or a combination of both?

A: At the hardware level, the engineers choose one or the other when they design the hardware. At the application level, the programmer chooses CO or CL transport to suit the application.

Q: Is it correct to assess that circuit switching communication corresponds to connection-oriented communication in the Physical layer, and packet switching communication (using frames) corresponds to connectionless in the physical layer?

A: As a quick generalization, yes. In practice, circuit switching often involves several layers protocol in addition to the ``physical'' layer.

Q: When one dials-in from home through a SLIP account, is one participating in a connection-oriented modality of communication?

A: As I explained above, you are using the PSTN (that's the Public Switched Telephone Network), which is a connection-oriented hardware system. However, only SLIP and the modem software knows that it's CO. Once you are dialed in, everything goes over IP, which is CL. So, you are using IP protocol (CL) over the phone system.

Q: On the other hand, when one is operating on an organizational computing environment running Netscape, is it correct to assess that one is participating in a connectionless communication?

A: Netscape uses HTTP over TCP (i.e., CO transport). Of course, TCP uses IP, so it's CO over CL. If the underlying network hardware happens to be CL, that's the end of the story. When you use netscape over SLIP or PPP, it's CO over CL over CO.

Q: What is the difference between IP and UDP? Is it correct to assert that they both relate to connectionless communication?

A: They are both CL; IP is machine-to-machine, while UDP is end-to-end.

Q: Given a collection of nodes that participate in a path of communication (say nodes are hosts or routers), must each path participant agree on ALL protocols (each on a level) a specific communication? OR must only the source and destination agree?

A: Everyone must agree on the protocols that they use... routers only use the lower layers of the stack (up through the Internet layer). So, two hosts could run a transport protocol without the routers knowing.

Q: Must each path participant agree on the modality of communication? OR just the source and destination?

A: They must agree at the same layer of the stack. If two computers attach to a CL network, they must agree to use CL frames to communicate.

*Everyone* must agree on the IP layer.