TCP/IP Programming

Get Started. It's Free
or sign up with your email address
TCP/IP Programming by Mind Map: TCP/IP Programming

1. General notes

1.1. TCP/IP is 100% client-server

2. IPC (Inter-process communication)

2.1. Sockets

2.1.1. Make network look like a file system

2.1.2. Routines

2.1.2.1. open/close file

2.1.2.2. open/close connection

2.2. TLI

3. Transfer details

3.1. Network byte order

3.1.1. Appeared because 8 bytes weren't enough

3.1.2. Little-endian (byte order: 3210)

3.1.2.1. Generic to x86 architecture

4. unix settings

4.1. /etc/services

4.1.1. Map port - program

4.1.2. Example

4.1.2.1. telnet 23/tcp

4.2. /etc/inetd.conf

4.2.1. Example

4.2.1.1. telnet stream tcp6 nowait root /usr/sbin/telnetd telnetd -a

4.2.2. Provide call with args

5. TCP

5.1. Connection-oriented transport service

5.2. Structure

5.3. Contains segments

5.4. Transport address = protocol number (8bit)

5.5. Protocol port - 16 bit

5.6. Ports

5.6.1. Server

5.6.1.1. Under 1024

5.6.2. Client

5.6.2.1. Above 1024

6. IP

6.1. Takes care of transferring packets to destination

7. UDP

7.1. Connectionless

7.2. Datagram-based

8. Terms

8.1. Process

8.1.1. Triplet: protocol, ip, port

8.2. Connection (Socket)

8.2.1. 2 triplets

8.3. Daemon

8.3.1. Application waiting for incoming connection

8.3.2. Registered with kernel, says which port it monitors

9. InetD

9.1. Super-server daemon in unix

9.2. xinetd impl in linux/mac os x