Network 6

EzChatter(TCP 방식) - api로 구현

/* 간단하게 구현된 1:1 방식의 채팅 프로그램이다. 실제 네트워크 어플리케이션 에서는 이러한 방법은 쓸 수 없으며, 이것은 단지 문자열에 대해서만 동작할 수 있으며 다른 종류의 데이터는 처리하는 것이 곤란하다. 1. 단일 접속만을 허용한다. 2. 한쪽은 서버 , 한쪽은 클라이언트 3. 채팅 이외의 기능은 가지지 않는다. 4. api로 구현되었다. */ ============================================================================= 1. 실행후 wait client라는 문자열을 입력하면 Server 상태로 Client의 접속을 대기한다. [ 창을 보면 현재 server의 IP정보를 확인할 수 있다. ] 2. 또 프로그램을 실행후,(client)..

SOCKET (소켓) , SOCKET ADDRESS (소켓주소)

SOCKET (소켓) 네트워크 전송에서 프로세스들의 통신을 위한 최종점 오브젝트(OBJECT) , 소켓은 데이터 그램이나 스트림 타입이며 지정된 네트워크 주소로 묶일수 있다. 소켓은 윈도우즈 소켓 연결을 다루기 위한 어플리케이션 프로그래밍 인터페이스 (API) 를 제공한다. SOCKET ADDRESS (소켓주소) 각 소켓 객체는 네트워크상에서 인터넷 프로토콜 주소(IP Address)로 조합된다. 보통 주소는 ftp.microsoft.com의 머신 이름이거나 "128.56.22.8"과 같이 점으로 구분되어지는 숫자로 표현된다. /* 보통은 소켓을 만들기 위해 검색을 할 때 일일이 주소를 지정할 필요는 없다. 중요한 것은 시스템이 복수의 네트워크 카드를 사용하거나 또는 우리가 만든 어플리케이션이 언젠가는 ..

소켓에 주소 정보 할당

/***************************************** 참고 : TCP/IP 소켓 프로그래밍 윤성우 | 저 ******************************************/ int bind(int sockfd , struct sockaddr * myaddr , int addrlen); sockfd - 주소를 할당하고자 하는 소켓의 파일디스크립터 myaddr - 할당하고자 하는 주소 정보를 지니고 있는 구조체 sockaddr_in 의 포인터 addrlen - 인자로 전달된 주소 정보 구조체의 길이 결과 : sockfd가 가리키는 소켓에 myaddr이 가리키는 주소 정보 할당

인터넷 주소조작 함수

/*********************************************** 참고 : TCP/IP 소켓 프로그래밍 / 윤성우 | 저 ************************************************/ ● unsigned long inet_addr(const char * string); // Dotted-Decimal Notation 을 Big-Endian 32 (network-byte-ordering) 비트 값으로 변환 // 사용자가 return 값을 sockaddr_int 구조체의 int_add에 대입하여야 한다. ● int inet_aton(const char * string , struct in_addr * addr); // inet_addr 함수 보다 개선된 데이터..

네트워크 바이트 순서

/*********************************************** 참고 : TCP/IP 소켓 프로그래밍 / 윤성우 | 저 ************************************************/ [1]. 시스템이 내부적으로 데이터를 처리하는 방식 2가지 // (1). Big - Endian 표현 ┌───┬───┬───┬───┐ │ 0x12 │ 0x34 │ 0x56 │ 0x78 │ //ex : Motorola 68000계열 └───┴───┴───┴───┘ (2). Little - Endian 표현 ┌───┬───┬───┬───┐ │ 0x78 │ 0x56 │ 0x34 │ 0x12 │ //ex : Intel X86 계열 └───┴───┴───┴───┘ /* 데이터를 상이하..