통신모델
- 어플리케이션단
- 유저 인터페이스 정의
- 예를 들어 웹통신을 한다고 하면 HTTP프로토콜 사용
- 파일을 다운로드 받는다면 FTP프로토콜 사용
- MMO 서버를 만든다면 별도의 서버 프로토콜 사용
- 트래스포트단
- 배송 정책을 정한다
- 대표적인 프로토콜 TCP, UDP
- UDP는 택배를 퀵으로 빨리 보내는 대신 사후처리 x (분실, 사고)
- TCP는 꼼꼼하게 체크, 상대방이 패킷을 받았는지에 대해 계속 통신을하며 체크, 못받았다면 재차 전송, 변조되었는지 에러검출 등등 체크
- FPS게임에서는 보통 UDP, MMO게임에서는 TCP를 주로 활용
- 네트워크단
- 네트워크 간 경로 설정
- 대표적으로 IPv4, IPv6등 주소를 정의하는 방법들
- 관련 장치로는 라우터가 있음
- 서로 다른 아파트 단지
- 데이터 링크
- 네트워크 내 경로 설정
- 대표적인 프로토콜로 이더넷 ppp
- 같은 아파트 단지 내에 있는 장치들끼리 통신
- 피지컬
- 물리적인 신호처리로 변환
- 케이블, 허브와 같은 장치
- OSI 7레이어가 더 오래됨 -> TCP/IP 모델
- 7계층 주소는 사실상 도메인에 해당 ex) www.naver.com
- 3계층 주소는 우리 IP를 얘기함
- 2계층 주소는 MAC address를 얘기하는데 처음에 기기가 생산될때 그 네트워크 카드에 박혀있는 주소임
- 기기가 변동되지 않는 한 평생 고정임
- 예를 들어 Hello World라는 문자열을 네트워크 상에서 전송한다고 가정하면
- 헬로월드라는 단순한 정보만 있는것이 아닌 트랜스포트단 에서는 TCP와 관련된 정보들이 패킷에 추가, IP와 관련된 목적지 주소와 보낸 사람의 주소등이 추가, 중간중간 경로를 찾기 위해 장치들의 MAC 주소들이 데이터 링크단에서 추가등 패킷이 조금씩 추가돼서 보낸다
- 반대로 받는 쪽에서는 전기적신호를 컴퓨터가 알아볼 수 있는 01001과 같은 데이터로 변환한뒤 한단계씩 올라간다.