-
뇌자극 TCP/IP 3강 요약C_C++ 프로그래밍/뇌를 자극하는 TCP_IP 2019. 5. 19. 22:06
1. 소켓에 대하여
2. 서버/클라이언트 모델
3. 인터넷 서비스 포트
소켓이란 무엇인가?
이미 만들어져 있는 소켓 함수를 사용하여 간단하게 데이터를 전송할 수 있다.
TCP/IP 4계층에서 전송계층 위에 놓인다.
전송 계층 위에서 전송계층의 프로토콜 제어를 위한 코드를 제공한다.
소프트웨어 계층이라고 할 수 있다.
전송 계층 위에 있는 프로토콜만 제어하면 된다. (소켓 계층이라고도 불린다)
하지만, 가끔 낮은 계층의 프로토콜을 다룰 때도 있다.
BSD 소켓
기업이 아닌 대학에서 개발하였고 C로 개발이 되었기 때문에 성공했다.
자유롭게 사용하도록 공개됨
소켓이 하는 일
소프트웨어 || (인터넷) || 소프트웨어
------------------------------->
소프트웨어와 소프트웨어를 연결한다.
소프트웨어 간의 데이터 통신을 담당한다.
socket() socket()
Chrome --------------------------------------------(Internet)--------------------------------- Apache <---> 문서
connect() accept()
모델의 종류
1. 서버 & 클라이언트 모델
서버 : 데이터 관리 서비스 제공 네트워크 프로그램
클라이언트 : 서버에 정보를 요청하는 프로그램
=> 중앙 집중형 정보 제공 방식이다.
2. 매니저 & 에이전트 모델
서버/클라이언트 모델(n:m)과 유사하지만
매니저/에이전트 모델은 1:n 형태이다.
3. Peer To Peer (p2p)
동등 계층 모델이며, 모든 노드가 동등한 자격으로 네트워크에 참여할 수 있다.
훌륭한 모델이지만, 저작권 문제등으로 문제가 되고 있다.
최근에 모바일로 인해서 부상
대부분의 프로그램들이 서버-클라이언트 모델로 개발이 된다. (개발이 쉽기 때문에)
모든 모델들은 차이 없이 소켓으로 통신
포트
어떻게 프로그램을 찾을 수 있을까? => Port(포트)
포트라는 이름은 항구에서 배가 들어오는 항만을 말한다. (port)
서비스 포트 : 자신들이 네트워크에 연결할 때, 할당 받은 포트 번호로 연결이 된다.
HTTP(웹) : 80
FTP : 21
ssh : 22
telent : 23
nameserver : 42
SMTP(Email) : 25
포트 번호 : short int ( 1 - 65536)
시스템 포트 : 1 - 1024 (2^10)
- 0번 ~ 1023번: 잘 알려진 포트 (well-known port)
- 1024번 ~ 49151번: 등록된 포트 (registered port)
- 49152번 ~ 65535번: 동적 포트 (dynamic port)
※ 본 글은 개인 포트폴리오 혹은 공부용으로 사용하기 때문에, 무단 복사 유포는 금지하지만, 개인 공부 용도로는 얼마든지 사용하셔도 좋습니다
반응형'C_C++ 프로그래밍 > 뇌를 자극하는 TCP_IP' 카테고리의 다른 글
뇌자극 TCP/IP 5강 요약 (0) 2019.05.20 뇌자극 TCP/IP 4강 요약 (0) 2019.05.19 뇌자극 TCP/IP 2강 요약 (0) 2019.05.19 뇌자극 TCP/IP 1강 요약 (2) 2019.05.19