ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 네트워크 간단 요약
    책/게임서버 프로그래머 책 2024. 5. 30. 17:01

     

    네트워크 간단 요약 정리

     

    바이너리 전송

    -  이진화 되어있어서 컴퓨터가 이해하기 쉽게 표현 (사람이 보기 힘듬) 
    장점 : 해커가 확인하기 어려움
    단점 : 디버깅 힘듬
    •  
    • 메타 데이터란  ?
      • 바이너리의 경우 사람이 알아보기 힘든 부분도 있고, 서로 다른 버전 (통신규격 변경으로 인해) 의 경우 서로 통신이 어려운 단점이 존재
      • 메타데이터
        • 일종의 어떤 데이터인지 설명  
        • 장점
          • 디버깅이 쉬움
          • 클라이언트 버전이 다르더라도 (메시지 형태가 다름) 메타데이터를 통해 인지할 수 있다.
        • 단점
          • 데이터 크기가 커진다
          • 사람이 알아보기 쉽다
    • 스트림 vs 메시지
      • 스트림 : 송신자와 수신자가 받는 크기가 일정하지 않을 수 있다
      • 메시지 : 송신자와 수신자가 받는 크기가 일정하다
    • TCP vs UDP
      • TCP : 신뢰성 있는 통신, 스트림 형식 ( 데이터를 받았다는 응답이 오지 않으면 다시 재전송 )
        • 다시 재전송 과정에서 시간이 소모됨
        • ex) 중요데이터, 구매/판매 , 공격/방어 등등..
      • UDP : 신뢰성 없는 통신, 메시지 형식 ( 데이터를 받았다는 응답을 기다리지 않음 , 유실될경우 그대로 폐기 )
        • UDP는 보내는 데이터 크기가 클 수록 유실될 확률이크다 (재조합 과정에서 하나라도 없을경우, 전부다 폐기)
        • ex) 캐릭터 움직임, 음성, 화상전송
    • NAT
      • 가상사설망에서 외부와 통신하기 위해 거쳐가는 라우터
      • IPv4의 대역 한계로 인해 보완하고자 나옴
      • 외부IP가 부여된 라우터에 연결되어있는 PC들에서 보내는 정보를 포트 맵핑을통해 외부로 송신 / 수신 역할

     

    더 알아보기

    - 원격 프로시저 호출 (RPC) or 원격 메서드 호출(RMI)
     메시지를 송신 모듈 , 메시지 수신 모듈을 추상화하여 구현해 놓은 모듈들을 의미
     (게임개발에 특화된 모듈은 RMI)

    - TCP의 재전송 기능을 빠르게 하고자 UDP 처럼 일부로 데이터 유실 
     RUDP라고 불리는 기법은 TCP의 재전송을 빠르게하고자 패킷 유실을 하여 빠른 재송신을 의도적으로 한 기법

    - NAT 라우터의 매핑 기능
    홀 펀칭, 포트 매핑 (Fullcone NAT , uPNP 참고)

    - IPv4 / IPv6 는 서로 호환이 안됨 (여기서 호환을 위해 NAT가 사용)
     자세한 사항은 NAT64 & DNS64를 참고

     

     

    ' > 게임서버 프로그래머 책' 카테고리의 다른 글

    Socket과 select  (1) 2024.06.02
    Socket 동기 처리  (1) 2024.06.02
    Socket의 기본 정리 ( feat, Blocking / Non-Blocking )  (0) 2024.05.30
    네트워크 기본  (0) 2024.05.26
    멀티스레딩  (0) 2024.05.26
Designed by Tistory.