OSI 7계층이란, 통신 접속에서 완료까지의 과정을 7단계로 정의한 국제 통신 표준 규약
Link 계층
물리적인 영역의 표준화에 대한 결과
가장 기본이 되는 영역으로 LAN, WAN과 같은 네트워크 표준과 관련된 프로토콜을 정의하는 영역이다.
IP 계층
경로 검색을 해주는 계층임
IP 자체는 비연결지향적이며, 신뢰할 수 없는 프로토콜이다.
데이터를 전송할 때마다 거쳐야할 경로를 선택해주지만, 경로가 일정하지 않음.
또한 데이터 전송 중에 경로상 문제가 발생할 때 데이터가 손실되거나 오류가 발생하는 문제가 발생할 수 있음.
따라서 IP 계층은 오류 발생에 대한 대비가 되어있지 않은 프로토콜임
TCP/UDP (전송) 계층
데이터의 실제 송수신을 담당함
UDP는 TCP에 비해 상대적으로 간단하고, TCP는 신뢰성있는 데이터 전송을 담당함
TCP는 데이터 전송 시, IP 프로토콜이 기반임(IP는 문제 해결에 문제가 있는데 TCP가 신뢰라고?)
→ IP의 문제를 해결해주는 것이 TCP인 것. 데이터의 순서가 올바르게 전송되었는지 확인해주며 대화를 주고받는 방식임.
이처럼 확인 절차를 걸치며 신뢰성 없는 IP에 신뢰성을 부여한 프로토콜이 TCP이다.
애플리케이션 계층
서버와 클라이언트를 만드는 과정에서 프로그램 성격에 따라 데이터 송수신에 대한 약속들이 정해지는데, 이것이 바로 애플리케이션 계층이다.
서버와 클라이언트의 함수 호출 순서가 중요하다
서버 : socket() 생성 → bind() 소켓 주소할당 → listen() 연결요청 대기상태 → accept() 연결허용 → read/write() 데이터 송수신 → close() 연결종료
클라이언트 : socket() 생성 → connect() 연결요청 → read/write() 데이터 송수신 → close() 연결종료