모두의 네트워크(Network for Everyone)
-미즈구치 카츠야 지음, 이승룡 옮김, 길벗 출판사
책을 읽고 중요한 내용을 핵심용어 위주로 정리하였다.
Lesson 21 서브넷의 구조
1. 네트워크를 분할하는 것을 서브넷팅이라고 하고, 분할된 네트워크를 서브넷이라고 한다.
2. 서브넷팅이되면 구성이 '네트워크ID + 호스트ID'에서 '네트워크ID + 서브넷ID + 호스트ID'로 변경된다.
3. IP주소를 서브넷팅하면 어디까지가 네트워크ID이고 어디서부터가 호스트 ID인지 판단하기 어려울때가 있다.
이럴 때 서브넷마스크라는 값을 사용한다. 서브넷 마스크는 네트워크 주소와 호스트 주소를 식별하는 값이다.
Lesson 22 라우터의 구조
1. 서로 다른 네트워크와 통신하려면 라우터가 필요하다. 라우터는 네트워크를 분리할 수 있다.
2. 라우터는 네트워크를 분할할 수 있지만 스위치(레이어 2)와 허브는 분할할수 없다.
3. 컴퓨터에서 다른 네트워크로 데이터를 전송하려면 기본 게이트웨이를 설정해야 한다.
(네트워크의 출입구를 설정하는 것)
4. 라우팅은 경로 정보를 기반으로 현재의 네트워크에서 다른 네트워크로 최적의 경로를 통해 데이터를
전송하는 방식이다.
5. 경로 정보가 등록되어 있는 테이블을 라우팅 테이블이라고 한다.
6. 라우터 간에 라우팅 정보를 서로 교환하기 위한 프로토콜을 라우팅 프로토콜이라고 한다.
7. 라우팅 테이블 등록은 네트워크 관리자가 수동으로 등록하는 방법과, 자동으로 등록하는 방법이 있다.
수동으로 등록하는 방법은 소규모 네트워크에 적합하고, 자동으로 등록하는 방법은 대규모 네트워크에 적합하다.
대규모 네트워크에서는 정보를 하나하나 라우터로 등록하기가 힘들기 때문이다. 또 등록된 내용이 수정되면
수동으로 변경해야 해서 작업량도 많아진다. 자동으로 등록하는 방법은 라우터 간에 경로 정보를 서로
교환하여 라우팅 테이블 정보를 자동으로 수정해 준다.
<용어정리>
*네트워크 계층(network layer)
다른 네트워크와 통신하기 위한 경로 설정을 위해 라우터를 통한 라우팅을 하며 패킷 전송을 담당한다.
*IP(internet protocol)
인터넷에 있는 한 컴퓨터에서 다른 컴퓨터로 데이터를 보내는데 사용되는 네트워크 계층 프로토콜이다.
*IP주소
컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신하기 위해 사용하는 주소이다.
*라우터(router)
서로 다른 네트워크를 연결해 주는 장치로, 현재의 네트워크에서 다른 네트워크로 패킷을 전송할 수 있도록 한다.
*라우팅(routing)
네트워크에서 패킷을 목적지로 보낼 때 목적지까지 갈 수 있는 여러가지 경로 중 한가지 경로를 설정해주는 과정이다.
*라우팅 테이블
컴퓨터 네트워크에서 목적지 주소를 목적지에 도달하기 위한 네트워크 노선으로 변환시킬 목적으로 사용된다.
다른 네트워크로 가기 위한 가장 좋은 라우터의 정보를 가지고 있다.
*멀티캐스트(multicast)
한 컴퓨터(호스트)에서 패킷을 여러컴퓨터로 동시에 전송하는 것.
*브로드캐스트(broadcast)
IP네트워크에 있는 모든 컴퓨터(호스트)로 데이터를 전송하는 방식이다.
Lesson 23 전송 계층의 역할
1. 전송계층은 목적지에 신뢰할 수 있는 데이터를 전달하기 위해 필요하다.
2. 전송계층에는 오류를 점검하는 기능이 있다. 그래서 오류가 발생하면 데이터를 재전송하도록 요청한다.
그리고 전송된 데이터의 목적지가 어떤 애플리케이션인지 식별하는 기능이 있다.
-> 전송계층의 특징은 신뢰성/정확성과 효율성으로 구분한다.
신뢰성/정확성은 데이터를 목적지에 문제없이 전달하는 것이고, 효율성은 데이터를 빠르고 효율적으로 전달하는 것이다.
여기에서 신뢰할 수 있고 정확한 데이터를 전달하는 통신을 연결형 통신이라고 하고,
효율적으로 데이터를 전달하는 통신을 비연결형 통신이라고 한다.
연결형 통신은 신뢰할 수 있꼬 정확하게 데이터를 전송하는 통신방식, 비연결형 통신은 신뢰성을
보장하지 않지만 효율적으로 데이터를 전송하는 통신방식이라고 할 수 있다.
Lesson 24 TCP(Transmission Control Protocol)의 구조
1. 신뢰성과 정확성을 우선으로 하는 연결형 통신 프로토콜이다.
연결형 통신은 꼼꼼하게 상대방을 확인하며 데이터를 전송하는데, 데이터를 전송하기 전에
연결(connection)이라는 가상의 독점 통신로를 확보해야 한다.
2. 전송계층에서는 TCP 헤더가 붙는다.
3. TCP헤더가 붙은 데이터를 세그먼트라고 한다.
4. 연결을 확립하기 위해 TCP헤더에 있는 코드 비트를 사용한다.
5. 코드비트 중 'SYN'은 연결 요청, 'ACK'는 연결 응답, 'FIN'은 연결 종료를 뜻한다.
6. 연결 확립을 위해 패킷 교환을 세번 하는데 이를 3-way 핸드셰이크라고 한다.
Lesson 25 일련번호와 확인응답 번호의 구조
1. 3-way 핸드셰이크 이후 데이터 전송에 사용되는 TCP헤더의 일련번호와 확인 응답 번호.
TCP는 데이터를 분할해서 보내는데, 일련번호는 송신 측에서 수신측에 '이 데이터가 몇번째 데이터인지'알려주는
역할을 한다. 전송된 데이터에 일련번호를 부여하면 수신자는 원래 데이터의 몇 번째 데이터를 받았는지 알 수 있다.
확인 응답 번호는 수신 측이 몇 번째 데이터를 수신했는지 송신측에 알려주는 역할을 한다.
2. 데이터가 항상 올바르게 전달되는것은 아니므로 일련번호와 확인 응답번호를 사용해서 데이터가
손상되거나 유실된 경우에 데이터를 재전송 하게 되어있다. 이것을 재전송 제어라고 한다.
데이터를 전송하는 도중 오류가 발생하면 일정시간동안 대기한 후 재전송 하는 것이다.
3. 수신한 세그먼트(데이터)를 일시적으로 저장하는 장소를 버퍼라고 한다.
4. 데이터 크기가 버퍼 크기를 넘어서는 것을 오버플로라고 한다.
5. 버퍼 용량의 크기를 윈도우크기라고 한다. 얼마나 많은 용량의 데이터를 저장해 둘 수 있는지
나타내는것으로, 확인응답을 일일이 하지 않고 연속해서 송수신할 수 있는 데이터의 크기이다.
'네트워크 기초' 카테고리의 다른 글
네트워크 기초(3) (0) | 2020.03.27 |
---|---|
네트워크 기초(2) (0) | 2020.03.24 |
네트워크 기초(1) (0) | 2020.03.24 |