✅ 한 것들
📖 게임 서버 프로그래밍 교과서
2.2 인터넷
OSI 계층 3 IP 규약만 지키면 기기 종류 상관없이 소통 가능 (랜섬, 광섬유, 무선, 전화선...)
서로 다른 종류의 많은 스위치와 라우터가 연결되어 지구를 뒤덮은게 인터넷
2.3 컴퓨터 네트워크 데이터
프레임 : OSI 계층 2의 데이터 단위
패킷 : OSI 계층 3의 데이터 단위
서버 앱 개발에는 스트림과 메시지를 다룬다
스트림 형식
- 스트림 : 한쪽에서 다른 한쪽으로 연결된 데이터 흐름 하나
- 보낸거랑 받은거랑 횟수나 데이터 순서 일치 안 할수도 있음
- 헤더 방식 : 보낼 데이터 크기 먼저 보내기
- 구분자(delimiter) 방식 : 데이터 시작이나 끝을 알리는 기호 추가
메시지 형식
- 자체적으로 데이터 시작과 끝 구별 가능
- 14~25번째 바이트는 Direction, 26~27번째는 BulletType 등 메세지를 필드로 나눈다
IP 패킷 (OSI 3계층, 특징 알아두면 좋다)
- 주고 받는 데이터(페이로드)의 크기, 송신자 주소, 수신자 주소, checksum 등 포함
- 패킷 하나 크기는 제한돼있음. 이는 라우터마다 다름.
- 스트림이나 메시지에선 이런 제한 없음.
- 단편화(fragmentation) : 긴 스트림 같은거 송신할 때 패킷 크기 제한 맞춰서 여러 조각냄
2.4 컴퓨터 네트워크 식별자
IPv4 : 4바이트
IPv6 : 16바이트
포트 : 2바이트 (65535 이하)
host name -- DNS 서버 -> IP 주소