Presentation is loading. Please wait.

Presentation is loading. Please wait.

IT COOKBOOK - 0 - Windows Network Programming. Chapter 01. Intro. to Network and Socket Programming.

Similar presentations


Presentation on theme: "IT COOKBOOK - 0 - Windows Network Programming. Chapter 01. Intro. to Network and Socket Programming."— Presentation transcript:

1 IT COOKBOOK - 0 - Windows Network Programming

2 Chapter 01. Intro. to Network and Socket Programming

3 IT COOKBOOK - 2 -  Goal TCP/IP Protocol Basic concept of socket Windows socket overview Writing and executing of Windows socket application

4 IT COOKBOOK - 3 -  Internet Configuration End System (PC, PDA,...) Router End System (PC, PDA,...) Router ① ② ③ ④

5 IT COOKBOOK - 4 -  TCP/IP Protocol TCP/IP Protocol (OS) Application Router TCP/IP Protocol (OS) Application End System

6 IT COOKBOOK - 5 -  TCP/IP Protocol Structure (1/6) Network Access Layer Internet Layer Transport Layer Application Layer Device Driver Network Hardware IP TCP, UDP TELNET, FTP, HTTP, SMTP, MIME, SNMP,... TCP/IP Protocol Structure –Layering Structure

7 IT COOKBOOK - 6 -  TCP/IP Protocol Structure (2/6) Network access layer –Role Data transmission through physical network –Components Network hardware + device driver –Addressing physical address(MAC address) Command: ‘ ipconfig /all ’ –Example Ethernet

8 IT COOKBOOK - 7 -  TCP/IP Protocol Structure(3/6) Internet layer –Role Packet routing –Addressing IP address Transport layer –Role Data transfer to end system –Addressing port number –Examples TCP(Transmission Control Protocol), UDP(User Datagram Protocol)

9 IT COOKBOOK - 8 -  TCP/IP Protocol Structure(5/6) TCP and UDP TCPUDP Connection-oriented Protocol - Data transfer after connection setup Connectionless Protocol - Data transfer winthout connection Byte-stream serviceDatagram service Reliable data transfer - Retransmission mechanism Unreliable data transfer - No retransmission mechanism 1 to 1 communication(unicast) 1 to N communication (broadcast), N to N Communication (multicast)

10 IT COOKBOOK - 9 -  TCP/IP Protocol Structure(6/6) Application layer –Role Including some application protocol and services Providing various application service –Examples Telnet, FTP, HTTP, SMTP etc.

11 IT COOKBOOK - 10 -  Packet transfer Principle (1/5) Packet –Control information defined by each protocol (IP address, port number, error check code etc.) + data –Depending on the location, header and trailer

12 IT COOKBOOK - 11 -  Packet transfer Principle(2/5) Packet transfer at sender side Ethernet IP TCP Application data TCP Header data TCP HeaderIP Header TCP Header IP Header Ethernet Header data Ethernet trailer

13 IT COOKBOOK - 12 -  Packet transfer Principle(3/5) Packet transfer at receiver side Ethernet IP TCP Application data TCP Header dataTCP HeaderIP Header TCP Header IP Header Ethernet Header dataEthernet trailer

14 IT COOKBOOK - 13 -  Packet transfer Principle(5/5) Packet transfer using Internet protocol Network Access Layer Internet Layer Transport Layer Application Layer Network Access Layer Internet Layer Transport Layer Application Layer Network Access Layer Internet Layer Network Access Layer Internet Layer End systemRouter End system

15 IT COOKBOOK - 14 -  IP address and port number (1/3) IP 주소 –Unique identifier of a internet host –IPv4: 32bit, IPv6: 128bit example) 147.46.114.70 example) loopback address: 127.0.0.1 Port number –Unique process identifier

16 IT COOKBOOK - 15 -  IP address and port number (2/3) IP address and port number TCP IP process UDP Port number(0~65535) IP address

17 IT COOKBOOK - 16 -  Client/server model Client/server Model Server first executed When client send the request, server processes the request Example: web client/server ServerClient waiting connecting

18 IT COOKBOOK - 17 -  socket concept (1/5) Three points of view ① Data type ② communication end-point ③ Network programming interface

19 IT COOKBOOK - 18 -  socket concept(2/5) Data type –Each of client and server is identified by a separate socket address –Example of socket address data type Struct sockaddr_in, in_addr // file creation int fd = open("myfile",...);... read(fd,...) // Reading write(fd,...) // Writing // socket creation SOCKET sock = socket(...);... recv(sock,...) // Receive send(sock,...) // Send

20 IT COOKBOOK - 19 -  socket concept(3/5) Communication end-point –Socket requires three components protocol(TCP/IP, UDP/IP) sender IP address, sender port number receiver IP address, receiver port number

21 IT COOKBOOK - 20 -  socket concept(4/5) Communication end-point(cont ’ d) client send (sock,...) server recv (sock,...) data protocol: TCP/IP IP address: 147.46.114.70 port number: 12023 protocol : TCP/IP IP address: 61.72.244.22 port number: 9001

22 IT COOKBOOK - 21 -  socket concept(5/5) Network programming interface –Socket is the interface between application layer and transport layer in TCP/IP protocol stack application TCP IP UDP application Socket interface ICMP, IGMP

23 IT COOKBOOK - 22 -  Windows sockets (1/3) Windows Sockets, Winsock -Originated by Berkeley Software Distribution UNIX -Included as API(Application Programming Interface) since Windows 95 version

24 IT COOKBOOK - 23 -  Windows sockets(2/3) Winsock supported by windows version Supported protocols –TCP/IP, IPv6(windows XP or above), IrDA(windows 98 or above), Bluetooth(windows XP SP2 or above), IPX/SPX, ATM, DECNet, TP4(Not supported since windows 2000), DLC(TP4(Not supported since windows XP), NetBEUI(Not supported since windows XP) OS Winsock ver. Windows 95 1.1 (2.2) Windows 98/Me, Windows NT/2000/XP/2003 Server, Windows Vista/2008 Server/7 2.2 Windows CE 1.1 (2.2)

25 IT COOKBOOK - 24 -  Windows sockets(3/3) Structure Winsock 2.x Application Winsock 1.x Application WINSOCK.DLL (16 bit) WSOCK32.DLL (32 bit) WS2_32.DLL (32 bit) Winsock 1.x API Winsock 2.x API TCP/IPIrDAIPX/SPX MSWSOCK.DLL...Bluetooth Winsock 1.x Extended API

26 IT COOKBOOK - 25 -  Winsock application practice Source code: –Class webpage Sample Winsock application(server.cpp)


Download ppt "IT COOKBOOK - 0 - Windows Network Programming. Chapter 01. Intro. to Network and Socket Programming."

Similar presentations


Ads by Google