Protocols in multi-service networks
Protocols in multi-service networks

This free course is available to start right now. Review the full course description and key learning outcomes and create an account and enrol if you want a free statement of participation.

Free course

Protocols in multi-service networks

3.5.4 Primitives

The two abstract primitives described in the specification of IPv4 are given in Table 9 but, as with TCP, different systems may implement the interface in different ways. In some computer systems the TCP and IP software may be written as a single software module, and in these cases there is not a clear interface between the two layers.

Table 9: IPv4 primitives

Primitive name Primitive parameters
Recv Buffer pointer, protocol, source address, destination address, type of service, length of buffer, optional user data
Returns a report on the outcome of the primitive
Send Source address, destination address, protocol, type of service, time to live, buffer pointer, length of buffer, identifier, don't fragment flag, optional user data
Returns a report on the outcome of the primitive

You should be able to match most of the parameters to fields in IPv4 datagrams.

SAQ 13

Identify the protocol data units and primitives required to send an HTTP command between a client and server in the transport and internetwork layers.

Answer

Assuming that a connection does not already exist between the HTTP application running on the client and the HTTP server application, the client application layer requests that the transport layer sets up a connection by issuing a TCP open primitive. Note that the foreign socket includes port number 80. (Before this request, the application would have to translate the host name to a network address to create the foreign socket value required by the open primitive.)

The transport layer encapsulates the TCP segment that is setting up the connection in an IP datagram by invoking an IP send primitive. In other words, the TCP segment is the optional user data parameter of an IP send primitive. The TCP segment that is the third part of the three-way handshake, acknowledging the connection in the opposite direction, is encapsulated in another IP datagram. This is accomplished by the transport layer invoking another IP send primitive.

The HTTP client application requests that the data representing the HTTP command be transferred to the HTTP server application by invoking a TCP send primitive. The transport layer transfers this data by invoking an IP send primitive, thereby encapsulating the TCP segment in an IP datagram. Depending on the size of the command, the transport layer may have to fragment the user data over several segments. Similarly, during the transport of the datagram(s) further fragmentation may take place.

T822_1

Take your learning further

Making the decision to study can be a big step, which is why you'll want a trusted University. The Open University has 50 years’ experience delivering flexible learning and 170,000 students are studying with us right now. Take a look at all Open University courses.

If you are new to university level study, find out more about the types of qualifications we offer, including our entry level Access courses and Certificates.

Not ready for University study then browse over 900 free courses on OpenLearn and sign up to our newsletter to hear about new free courses as they are released.

Every year, thousands of students decide to study with The Open University. With over 120 qualifications, we’ve got the right course for you.

Request an Open University prospectus