[ Team LiB ] Previous Section Next Section

Exercises

10.1

In our client code shown in Figure 10.4, what will happen if SCTP returns an error? How would you correct this problem?

10.2

What will happen if our server exits before responding? Is there any way the client can be made aware of this?

10.3

In Figure 10.7 on line 22, we set out_sz to 800 bytes. Why do you think we do this? Is there a better way to find a more optimal size to set this to?

10.4

What effects will the Nagle algorithm (see Section 7.10) have on our client shown in Figure 10.7? Would turning off the Nagle algorithm be better for this program? Build the client and server code, then modify both of them to disable the Nagle algorithm.

10.5

In Section 10.6, we state that an application should change the number of streams before setting up an association. What happens if the application changes the number of streams afterwards?

10.6

When modifying the number of streams, we state that the one-to-many-style socket is the only style that can use ancillary data to request more streams. Why is this true? (Hint: The ancillary data must be sent with a message.)

16.7

Why can a server get away with not tracking the associations it has open? Is there any danger in not tracking associations?

16.8

In Section 10.7, we modified the server to terminate the association after replying to each message. Will this cause any problems? Is it a good design decision?


    [ Team LiB ] Previous Section Next Section