본문 바로가기

CS/하루 3분 네트워크 교실

(17)
42,43,44회_NAPT, 5~7계층, OSI 참조 모델과 요약 IP 주소와 포트 번호 둘 다 변환하는 것이 NAPT이다. 같은 글로벌 IP 주소라도 다른 포트 번호를 사용하기 때문에 복수의 컴퓨터가 같은 글로벌 IP 주소로 접속할 수 있다. NAPT를 사용하면 보안에도 도움이 된다. LAN 내에 공개하고 싶은 서버가 있을 경우에는 정적 NAPT를 사용한다. 데이터 부분에 IP 주소가 들어가는 애플리케이션에는 개별적으로 대응한다. TCP/IP 에서는 5,6,7계층은 통합해서 한 개의 프로토콜로 되어있다. 5계층은 세션관리를 수행한다. 6계층은 데이터의 변환, 압축, 암호화를 수행한다. 7계층은 사용자 애플리케이션에 네트워크 서비스를 제공한다. 각 계층은 상위 계층에 서비스를 제공한다. 각 계층은 독립해 있으며, 다른 계층에 영향을 미치지 않는다.
40,41회_UDP, 네트워크 주소 변환 TCP는 신뢰성 대신에 전송 효율을 희생한다. UDP는 아무런 제어도 하지 않고 커넥션도 설정하지 않는다. UDP를 사용하는 애플리케이션에는 고속성이나 실시간 송수신이 필요한 것, 브로드캐스트가 필요한 것 등이 있다. 사설 IP 주소로는 인터넷에 접속할 수 없다. 글로벌 IP 주소는 부족한 상황이다. 사설 IP 주소와 글로벌 IP 주소를 변환하는 것이 NAT이다. 보유하는 글로벌 IP 주소 이상의 호스트는 동시에 접속할 수 없다.
38,39회_윈도우 제어, 포트 번호 확인응답을 보낼 때는 확인응답 번호에 다음에 수신 받을(예정의) 데이터의 번호를 넣는다. 전송에러가 발생했을 때에는 지금 보낸 것과 같은 데이터를 보낸다. TCP는 윈도우 제어라는 구조로 버퍼 플로를 방지한다. 상대방의 버퍼사이즈=윈도우 사이즈를 확인하면서 송수신을 진행한다. 윈도우 사이즈 분량까지는 확인응답을 수신하지 않아도 한번에 보낼 수 있다. 포트 번호로 어느 애플리케이션의 데이터인지를 식별한다. 포트와 애플리케이션을 접속하는 기능을 소켓이라고 한다. 자주 사용되는 서비스는 웰 노운 포트를 사용한다. 송신처는 49152번 이후의 중복되지 않는 번호를 자유롭게 사용한다.
36,37회_4계층의 역할과 개요, 커넥션과 세그먼트 4계층은 신뢰성이 높은 전송을 수행한다. 확인응답/제어흐름을 수행하고, 신뢰성이 높은 데이터 전송을 실시한다. 어느 애플리케이션에 도달할지를 판별하기 위해 포트 번호를 사용한다. 4계층은 TCP와 UDP 두 가지 프로토콜이 있으며, 둘 중 한 개를 사용하여 데이터 전송을 수행한다. TCP에서의 데이터 전송에는 커넥션 확립이 필요하다. 커넥션은 가상의 데이터 통로이다. 커넥션의 확립은 쓰리웨이 핸드쉐이크 방식으로 수행한다. 큰 데이터는 MSS로 분할해서 전송한다. 전송되는 데이터에는 순서대로 번호가 부여된다.
34,35회_ICMP,Echo와 Time Exceeded 에러 메시지 등을 전송하는 프로토콜이 ICMP이다. ICMP에서는 IP 헤더+ICMP 메시지를 송신한다. ICMP에는 Query와 Error 두 종류의 메시지가 있다. 타입3의 ICMP는 수신처에 도달하지 못했다는 것을 통지한다. IP 데이터그램의 TTL(Time To Live)은 라우터를 경유할 때마다 1만큼씩 줄어들고, 0이되면 그 데이터그램은 파기된다. ICMP 타입의 8과 0은 에코 요청과 에코 응답이다. 에코 요청을 수신한 컴퓨터는 에코 응답을 보낸다. 에코 요청에 대해 에코 응답을 보내오면, 그 상대와 데이터의 송수신이 가능하다는 것을 의미한다. 에코 요청은 ping을 사용하여 실행할 수 있다. TTL에 의해 패킷을 파기한 라우터는 송신처에 Time Exceeded를 보낸다. Time Exce..
32,33회_라우팅,RIP 동적 라우팅은 라우터가 자동으로 경로를 결정하는 것이다. 동적 라우팅은 라우팅 프로토콜로 실현된다. 라우팅 프로토콜이란, 근접해 있는 라우터 간의 네트워크 정보를 서로 교환하기 위한 규칙이다. 라우팅 프로토콜은 동작 방식과 장소에 따라 여러 종류가 있다. 라우팅 프로토콜에 의해 근접해 있는 라우터 간의 네트워크 정보를 서로 교환한다. 라우팅 프로토콜이 언제, 어떻게, 누구에게, 무엇을 보낼지를 결정한다. 이를 통해 컨버전스 상태에 도달한다. 홉 수(경유하는 라우터 수), 회선속도, 정체상태, 에러 발생률 등등이 '최적'의 기준이 된다. RIP는 디스턴스벡터형 라우팅 프로토콜이다. 라우팅 업데이트로 정보를 교환한다. 라우팅 업데이트란, 라우팅 테이블을 그대로 교환하는 것을 말한다. 30초에 1회 업데이트를..
29,30회_라우터,디폴트 게이트웨이 라우터가 경로 선택을 한다. 라우터의 인커페이스는 IP 주소를 갖는다. 라우터는 경로를 선택하기 위해서 라우팅 테이블을 갖는다. 디폴트 게이트웨이란, 컴퓨터가 다음에 보낼 라우터이다. 즉, 디폴트 게이트웨이가 네트워크의 출입구가 된다. 라우터는 브로드캐스트를 다른 네트워크에 보내지 않는다. 브로드캐스트가 미치는 범위를 브로드캐스트 도메인이라고 한다. 컴퓨터는 다른 네트워크로 데이터를 전송하려고 할 경우 디폴트 게이트웨이에 보낸다. 그 경우 디폴트 게이트웨이로 ARP를 송신하고, 디폴트 게이트웨이의 MAC 주소를 수신처 MAC 주소로 정한다.
27,28회_DNS, 주소와 경로 사용자 혹은 애플리케이션이 수신처를 결정한다. IP 주소를 알고 있으면, 그것을 사용할 수가 있다. 호스트 명을 알고 있는 경우는 DNS를 사용한다. DNS 서버에 호스트 명에 대응하는 IP 주소를 문의한다. DNS란, 전세계의 도메인, 호스트 명을 관리하는 일종의 분산형 데이터베이스이다. 데이터 전송 흐름 1. 자신의 IP 주소는 수동 또는 DHCP에서 할당받고, MAC 주소는 자동적으로 안다. 2. 사용자 애플리케이션이 수신처의 도메인 명을 결정하면 DNS로 IP 주소를 취득한다. 3. IP 주소가 결정된 후, ARP에 의해 MAC 주소를 취득한다. 4. 이것으로 송신처, 수신처의 MAC 주소, IP 주소를 알았기 때문에 데이터 전송이 가능해진다. IP 주소는 '최종 수신처', MAC 주소는 '다음 ..
25,26회_DHCP,ARP 4개의 주소(수신처 MAC 주소, 송신처 MAC 주소, 수신처 IP 주소, 송신처 IP 주소)는 데이터를 주고받는 데 필요하다. 송신처 MAC 주소는 송신할 인터페이스에 고정 주소를 사용한다. 송신처 IP 주소 설정 방식은 수동으로 정하는 정적인 방식과 DHCP를 사용해서 자동으로 할당하는 동적인 방식이 있다. 각 클라이언트는 DHCP 서버가 가지고 있는 어드레스 풀로부터 IP 주소를 할당받는다. 처음에 클라이언트는 IP 주소가 없기 때문에 브로드캐스트로 DHCP 서버에 IP 요청 신호를 보낸다. 서버 역시 풀에서 IP를 선택해서 브로드캐스트로 전송한다. 수신처 MAC 주소는 수신처 IP 주소가 결정된 후에 정해진다. 수신처 MAC 주소를 알기 위해서는 ARP를 사용한다. IP주소와 MAC 주소의 대응표..
23,24회_서브네팅,클래스리스 어드레싱 네트워크를 작은 네트워크(서브넷)로 나눈다. 서브네트워크를 사용할 경우 IP주소는 네트워크 번호, 서브넷 번호, 호스트 번호가 된다. 네트워크 번호, 서브넷 번호의 비트수를 나타내기 위해 서브넷마스크를 사용한다. 클래스풀 어드레싱은 낭비가 많다. 클래스를 사용하지 않는 할당 방식이 클래스리스 어드레싱이다. 클래스리스에서는 프리픽스 길이로 네트워크 번호의 비트 수를 나타낸다.