Optionally binds it to an address and connects it to

Info icon This preview shows pages 5–6. Sign up to view the full content.

View Full Document Right Arrow Icon
optionally binds it to an address, and connects it to a server. The server and client exchange data through the established connection. This section explains how CODO connections are established over firewalls as responses to CODO calls from applications. 4.1 Server binding To be able to accept connections from the outside world, a server socket behind a firewall must be locally bound, registered to the FA of its network, and officially bound. Local binding is nothing new. Just as with regular binding, a socket is bound to an address. Through the local binding, an (IP, port) pair, called the local address, is assigned to the socket. To arrange connections to a server socket, the FA of the server network must have enough information about the server socket. The FA needs this information to avoid owner test errors as explained in §3. The information is collected via registration . After a server socket is bound to a local address, the server’s CL sends a registration request with the local address and the type of the socket. After authentication and authorization and the official binding (explained shortly), the FA records the information sent by the CL and other information that it collects from the official binding process. NAT translates private addresses into public ones, and vice versa, as packets pass through it. Because of this translation, we may think of a socket inside a private network as having two addresses, a private (IP, port), called the local address in this paper, and a public (IP, port) that the NAT of the private network assigns for address translation. We may view the public (IP, port) as the address that the socket leases from the NAT box. Since the Berkeley socket API allows only one address per socket, a NAT traversal system with the same API must choose one address to make visible to the application and hide the other inside the system. We define the address that is known to the application as the official address of a socket. Similar to previous systems [10] [11], CODO uses the address a socket leases from a NAT box as its official address. Note that this is a natural decision because the leased address is globally unique. Official binding is the process of assigning the official address to a server socket. When an FA receives a registration request with a private local address, it finds a public address and rents the address to the server socket. This leased address becomes the official address of the socket and will be used to add NAT binding rules. Of course, if the local address is public, then it becomes the official address without address leasing. As a successful response to the registration request, the FA sends the official address to the CL of the server application. When an application calls getsockname asking for the address to which a CODO socket is bound, the CL returns with the official address instead of the local (real) address. Thus, the local address of a CODO socket is hidden inside the system.
Image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 6
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern