티스토리 뷰

cs/네트워크

네트워크 면접질문

안양사람 2021. 3. 29. 21:29
728x90
SMALL

한글파일 복붙. 사진x

 

네트워크 정리

·네트워크에 대해 설명하시오

컴퓨터와 컴퓨터 사이에 통신매체를 통해 데이터 통신을 주고 받는 것

·데이터와 데이터 통신에 대해 설명하시오

데이터는 컴퓨터상에서 무언가에 대한 정보를 비트로 표현한 것이다.

데이터 통신은 데이터를 컴퓨터 사이에 주고 받는 것이다.

·데이터 통신을 어떻게 하는지 설명하시오

컴퓨터와 컴퓨터 사이에 파이프가 있어서 그 사이로 데이터를 운반한다. 이때, 컴퓨터와 파이프 사이에 인터페이스라는 중개역이 있다. 그리고 데이터 통신을 하기 전에 프로토콜을 정해야 한다.

·프로토콜이 무엇인지 설명하시오(중복)

데이터 통신을 할 때 규칙이 필요하다. A 컴퓨터에서는 1101aB 컴퓨터에서는 1101b로 여긴다면 데이터를 올바르게 공유해도 문제가 생긴다. 이 때 규칙을 프로토콜이라고 한다.

추가

데이터 통신에 필요한 프로토콜은 복수의 프로토콜로 이루어진다.

프로토콜군 : 각각의 계층에서 사용되는 프로토콜을 통합한 것

데이터 통신은 같은 프로토콜을 사용하는 컴퓨터나 기기끼리만 가능

·네트워크가 왜 필요한지 설명하시오

네트워크를 통해 리소스를 공유한다. 리소스는 컴퓨터나 사용자가 가진 물리적, 논리적을 따지지 않는 자원을 뜻한다.

·회선 교환과 패킷 교환이 나오게 된 배경과 의미에 대해 설명하시오(전화기와 컴퓨터를 예시)

컴퓨터가 다른 컴퓨터와 연결을 하려면 파이프가 필요하다. 만약 A 컴퓨터가 100대의 컴퓨터와 연결하려면 파이프가 100개 필요하다. 이때 교환기를 사용함으로써 파이프 수를 줄일 수 있다. 컴퓨터와 교환기를 연결하고 교환기와 교환기 사이에 회선을 연결한다. 이때 교환기 사이에 회선을 많이 만들어둔다. 대표적인 예가 전화기다. 그런데 컴퓨터같이 연결이 지나치게 많이 필요할 때 그만큼 회선을 만들 수 없다. 그래서 패킷 교환이 나온다. 패킷 교환은 송신하고 싶은 데이터를 일괄적으로 한번에 보내지 않고 여럿으로 분할해서 송신하는 방식이다. 이러면 회선이 1개면 된다.

교환기는 회선을 교체해서 연결

패킷 교환기

1. 수신처가 연결되어있는 회선을 골라서 거기로 송출하는 역할

2. 사용하려고 하는 회선이 사용 중일 경우 일시적으로 저장했다가 회선이 비는 것을 기다리는 역할

·라우터가 무엇인지 설명하시오(나중에 추가)

실제 네트워크에서 패킷 교환기를 라우터라고 부른다.

·세그먼트가 무엇인지 설명하시오

패킷 교환기 없이 케이블 분배기(T자 분배기, 허브)로 연결되는 범위

라우터와 라우터 간의 범위

세그먼트 범위 내에 있는 컴퓨터는 패킷 교환 없이 직접 데이터를 송수신할 수 있다.

·네트워크를 구조에 따라 분류하고 설명하시오

멀티액세스네트워크 : 케이블 분배기를 사용해서 복수의 컴퓨터에 의한 데이터 송수신이 가능한 네트워크

포인트투포인트네트워크 : 컴퓨터 한 대가 다른 한 대의 컴퓨터에 데이터를 보내는 방식

·네트워크를 범위나 규모로 분류하고 설명하시오

LAN(Local Area Network) : 좁은 범위의 네트워크 ex) 학교 네트워크

WAN(Wide Area Network) : 넓은 범위의 네트워크 ex) 인터넷

네트워크의 목적인 리소스의 공유는 공유되는 리소스가 많을수록 효율이 올라가므로 LAN으로는 부족하다. 그래서 WAN으로 LANLAN을 연결한다.

·OSI 참조 모델이 무엇인지 설명하시오

ISO에서 데이터 통신의 규격과 프로토콜을 통일하려고 했다. 실패로 끝났지만, ISO의 표준화 단계에서 선언한 것이 OSI 참조 모델이다. 이는 데이터 통신의 단계 구성도이다.

OSI 참조 모델에서는 데이터 통신을 7개의 계층으로 나눈다.

단계마다 복수의 프로토콜로 실현

7계층

응용계층

사용자에게 네트워크 서비스를 제공

내용표현

6계층

표현계층

데이터의 형식을 결정

5계층

세션계층

데이터 송수신의 순서 등을 관리

4계층

전송계층

신뢰성이 높은 전송을 시행

전송물

3계층

네트워크계층

전송 규칙과 수신처를 결정

2계층

데이터링크계층

인접기기 사이의 데이터 전송을 제어

전송

1계층

물리계층

전기 기계적인 부분의 전송

어떤 계층의 프로토콜 변경은 다른 계층에 영향을 끼치지 않는다.

하위 계층은 상위 계층을 위해서 일하고 상위 계층은 하위 계층에 관여하지 않는다.

·캡슐화에 대해 설명하시오

데이터에 제어정보를 덧붙여서 PDU로 완성하는 것을 캡슐화라고 한다. 그리고 수신한 쪽에서는 캡슐을 벗긴다.

PDU(Protocol Data Unit) : 데이터랑 데이터를 보내기 위해 필요한 것들이 통합된 상태

데이터 앞에 붙이면 헤더(Header), 뒤에 붙이면 꼬리부(Trailer)

계층

호칭

사용자

데이터

7,6,5계층 PDU

메시지

4계층 PDU

세그먼트, 데이터그램

3계층 PDU

데이터그램(패킷)

2계층 PDU

프레임

1계층

신호

·프로토콜이 결정하는 것은 무엇인가

데이터 사용 방법

어떤 헤더를 붙일지 결정

데이터를 주고받는 순서

·TCP/IP 모델에 대해 설명하시오

Transmission Control ProtoCol/Internet Protocol

사실 표준 프로토콜이다.(인터넷)

 

 

인터넷에서 사용되고 있는 프로토콜

 

 

4계층

애플리케이션 계층

HTTP, FTP, SMTP

7계층

응용계층

6계층

표현계층

5계층

세션계층

3계층

트랜스포트계층

TCP, UDP

4계층

전송계층

2계층

인터넷계층

IP, ARP, ICMP

3계층

네트워크계층

1계층

인터페이스계층

(네트워크)

이더넷,

프레임 릴레이, PPP

2계층

데이터링크계층

1계층

물리계층

·1계층의 역할을 설명하시오

1계층은 물리계층으로 전기, 기계적인 부분의 전송을 시행한다.

역할 : 케이블이 연결되어 있는 기기에 신호를 전달한다.

·통신매체에 대해 설명하시오

신호가 지나는 파이프 역할을 한다. 유선과 무선이 있으며 유선이 일반적이다.

예로는 UTP(Unshielded Twist Pair Cable), 광파이버가 있다.

·1계층에서 인터페이스가 하는 역할을 설명하시오

데이터를 신호로 바꾸어 케이블에 보내고 케이블로부터 받은 신호를 데이터화 한다.

, 비트를 신호로, 신호를 비트로 변환하는 기기이다.

·신호에 발생하는 문제를 설명하시오

신호의 감쇠 => 증폭기

노이즈, 간섭 => 케이블에 쉴드처리(광파이버는 노이즈, 간섭 안받아)

충돌

멀티액세스 네트워크에서 일어난다. 신호가 보내지고 있는 도중에 다른 신호를 보낼 때

=>1. 신호 보내는 타이밍 엇갈리게

=>2. 신호가 지나는 길을 나눠

·허브와 충돌 도메인에 대해 설명하시오

허브에 케이블로 연결되있는 기기는 동일 케이블에 연결된 것과 같은 취급을 받게 된다. 허브는 두가지 역할을 한다.

신호의 증폭과 재생

복수의 기기를 연결해서 네트워크를 구축하는 기능

허브는 플러딩을 한다. (플러딩 : 허브는 수신한 포트 이외에 모든 포트에 수신한 신호를 전달)

허브는 수신한 신호에 대해 어떤 제어도 하지 않는다. 허브에 많은 컴퓨터를 연결하면 충돌 도메인이 커진다.

(충돌 도메인 : 신호를 송신하면 충돌이 발생할지도 모르는 범위) 충돌 도메인은 작아야만 한다. 다수의 컴퓨터가 필요하다면 스위치를 사용하자

·2계층의 역할을 설명하시오

2계층은 데이터링크 계층으로 신호가 닿는 범위에서의 데이터 전송에 관한 규정을 생각한다.

(세그먼트 범위에서의 데이터 전송에 관한 규정, 넘는 범위는 3계층)

·참고

1계층에서 다루는 신호랑 케이블에 따라 WAN용과 LAN용으로 나뉨. LAN의 사실표준인 이더넷이라는 규칙으로 설명. 3계층부터는 통합

·프레이밍과 프리엠블에 대해 설명하시오

프레이밍 : 1계층에서 주고받는 신호를 비트화해 거기에 의미를 갖게 하는 것(아닌것같아 밑에봐)

- 데이터를 프레임(frame)으로 그룹화

. , 데이타의 프레임화를 물리계층에 의해서 제공되는 비트 파이프(Pipe)

패킷(또는 프레임)화된 링크(Link)로 변환

- 이는 전송할 데이터를 전송단위로서의 패킷(또는 프레임)으로 나누어 그룹화시키는 역할임

데이터 배열에 Data, Header, Trailer 등을 넣어서 캡슐화(Encapsulate)를 하는 작업을 말한다.

프리엠블 : 지금부터 프레임이 시작된다는 신호(이더넷은 01을 교대로 보냄)

·주소와 어드레싱에 대해 설명하시오

주소는 데이터를 보내는 상대와 자신을 특정하는 데이터이다.

어드레싱은 주소를 어떻게 사용할지, 어떻게 배정할지 같은 것이다.

주소는 데이터 전송 방법에 따라 3가지가 있다.

유니캐스트 : 11 데이터 통신

브로드캐스트 : 모두에게 메시지 보내는 데이터 통신

멀티캐스트 : 1대 다수

인터페이스마다 유일한 유니캐스트 주소를 갖는다.

MAC(Media Access Control) 주소 : 인터페이스에 지정된 고정 주소(이더넷에서 사용하는)(벤더코드+할당코드)

48비트. 4비트마다 16진수로 고쳐 씀

·이더넷에 대해 설명하시오

LAN에서의 2계층은 이더넷이라는 규칙이 적용된다.

이더넷에서는 이더넷 헤더와 이더넷 트레일러를 데이터그램(패킷)에 붙여서 이더넷 프레임으로 캡슐화하고, 이 이더넷 프레임이 신호가 돼서 케이블로 전달한다.

 

(페이로드 : 사용에 있어서 전송되는 데이터)

이더넷의 동작

허브를 사용한 경우

1. 플러딩에 의해 허브에 연결되어 있는 모든 기기에 신호가 도달

2. 충돌이 발생한다.

1 => 이더넷에서는 수신한 프레임의 MAC주소를 보고 자기에게 온 것 이외의 것은 파기

2 => CSMA/CD라는 액세스 제어를 시행(반이중 통신) BUT 완전히 충돌을 막을수는 없어

·충돌이 발생하지 않도록 하기위해서는 어떻게 해야 하는가

1. 신호를 보내는 타이밍이 겹치지 않도록 엇갈리게 하는 방법

2. 신호가 지나는 길을 나누는 방법(스위치)

·스위치를 허브와 관련지어서 설명하시오

허브에서 충돌이 발생하지 않도록 하기 위해서 신호를 보내는 타이밍이 겹치지 않도록 엇갈리게 하는 CSMA/CD라는 액세스 제어를 시행했다. 하지만 충돌을 완전히 막을 수는 없었다. 그래서 다른 방법으로는 신호가 지나는 길을 나누는 방법이 있는데 이는 허브 대신 스위치를 사용하는 것이다. (충돌은 허브에서 발생)

스위치 안에서 수신한 프레임을 따로따로 보낼 수 있도록 처리해서 충돌을 막는다.

MAC 주소 필터링

a. 학습 : 수신한 프레임의 송신처 MAC 주소를 기록 => 수신한 포트랑 MAC 주소를 연관

이 학습에 의해 스위치는 포트에 연결되어 있는 컴퓨터의 MAC 주소를 기억. 이 대응표를 어드레스 테이블이라 한다. 프레임을 수신한 스위치는 프레임의 수신처 MAC 주소를 보고 그 MAC 주소가 있는 포트만 프레임을 송신. 그 결과 수신처가 다른 프레임이 동시에 스위치에 도달해도 충돌은 발생하지 않는다.

학습 전의 MAC 주소 수신의 프레임을 수신한 경우랑 멀티캐스트와 브로드캐스트 수신처인 프레임을 수신한 경우에는 허브와 마찬가지로 플러딩(수신처가 같은 프레임이 동시에 도달) => 버퍼링

버퍼링

버퍼링은 버퍼를 사용한 처리를 실행하는 것. (버퍼 : 일시적으로 데이터를 기록해 둘 수 있는 기억기기)

충돌할 것 같은 프레임을 버퍼에 일시적으로 저장해둔다. 그런데 버퍼의 용량은 제한되있다. 부족할 정도로 프레임이 도달한 경우에는 백 프레셔 또는 IEEE802.3x라는 규격을 사용해서 송신을 조정. 전이중 이더넷에 대응하면 IEEE802.3x, 아니면 백 프레셔

·전이중 이더넷에 대해 설명하시오

전이중 통신은 동시에 송신과 수신을 할 수 있는 방식이다. 스위치를 사용한 경우엔 충돌을 염려할 필요가 없으니까 CSMA/CD를 사용할 필요가 없고 전이중 통신을 할 수 있다. 이렇게 스위치를 사용해 전이중 통신을 하는 것은 전이중 이더넷이라고 한다.

·3계층의 역할을 설명하시오

3계층은 네트워크 계층으로 세그먼트 간에서의 데이터 송수신을 한다. 세그먼트는 라우터와 라우터 간의 범위이고 3계층에서는 이를 네트워크라고 말한다.(좁은의미의 네트워크)

인터넷 작업(InternetWork) 또는 인터넷(Internet)을 네트워크 간에서의 데이터 송수신이라고 하는데 3계층은 인터넷 작업을 수행하는 것이 그 역할이다. , 인터넷 작업에 의해 떨어진 위치에 있는 컴퓨터끼리 데이터 통신이 가능하게 되는 것이다.

·네트워크를 왜 나눠야 하는가?

네트워크 내라면 2계층까지 만으로도 데이터 송수신이 가능하다. 하지만 2계층까지의 기능만으로는 큰 네트워크를 구성할 수 없다. 이더넷으로 허브나 스위치를 사용하면 어느 정도 규모는 만들 수 있지만, 걸림돌이 생긴다. 예를 들어 스위치를 사용해도 충돌이 없어지기는 하지만 브로드캐스트를 제외하지는 못한다. 라우터를 넘어서는 브로드캐스트는 송신되지 않는다. 즉 네트워크를 나눠서 브로드캐스트가 도달하는 범위를 한정해서 브로드캐스트 문제를 해결한다.

·인터넷 프로토콜에 대해 설명하라

3계층에서 인터넷 작업을 하기 위해서는 어드레싱과 라우팅이 필요하다.

어드레싱은 주소를 어떻게 써서 어떻게 배당할지를 결정하는 것이다. 2계층 이더넷에서는 어드레스로 MAC 주소를 사용했지만 3계층에서는 장소를 특정할 수 없기 때문에 MAC 주소를 사용하지 않는다. 2계층은 물리주소, 3계층은 논리주소라고 불리는데 논리주소에는 위치정보가 들어있다. 위치정보는 어디의 네트워크에 있는 어느 컴퓨터라는 정보의 조합으로 실현된다.

라우팅은 경로 선택으로 수신처까지 어떤 경로로 갈 지를 결정하는 것(경유하는 네트워크 결정)이다. 참고로 라우터는 그것을 행하는 기기이다.

이 두가지 어드레싱하고 라우팅에 의해 인터넷 작업을 수행하기 위한 프로토콜로서 TCP/IP 프로토콜군에서 사용되는 것이 IP(Internet Protocol)이다.

IP에는 IPv4IPv6이 있다. 데이터에 IP 헤더가 붙은 상태의 PDUIP 데이터그램이라고 불린다.

·IP주소에 대해 설명하라

IP주소는 계층형 주소이고 네트워크 관리자가 컴퓨터에 할당한다. 네트워크에 접속할 때마다 붙이고 소속된 네트워크가 바뀌면 논리 주소(IP 주소)도 바뀐다. 논리 주소에도 유니캐스트, 멀티캐스트, 브로드캐스트 주소가 있다. 그리고 유니캐스트 주소의 논리 주소 중 네트워크 번호와 컴퓨터 번호를 조합해서 유일하게 해야 한다.

IPv432비트, IPv6128비트이다. IP 주소는 8비트마다 10진수로 표기하고, 8비트 사이에 점을 찍는다. 8비트의 단락을 옥텟이라고 한다. 4개의 옥텟, 32비트로 네트워크 번호의 컴퓨터 번호를 나타낸다.

질문

ip주소 브로드캐스트는 라우터에만 보내는건가?? 같은 ip잖아 어차피 같은 네트워크안에서는(공유기 말고) 아니 라우터 여러개랑 연결되는게 말이되나?? 한 네트워크에서 여러 IP존재해 0~255

·IP주소의 클래스풀 어드레싱에 대해 설명하라

 

 

IP 주소는 32비트이고 네트워크 번호와 컴퓨터 번호를 표시한다. 네트워크 번호는 인터넷에서 ICANN이라는 조직에서 실제로 번호를 사용하는 조직에 할당한다.

IP 주소를 조직의 규모에 따라 A~E로 나누고, 그 범위의 주소를 할당한다.

최초 옥텟의 맨앞 몇 비트로 판별한다. 클래스에 의해 컴퓨터 번호의 비트수가 정해지고, 이것으로 조직이 가질 수 있는 IP 주소의 수량이 결정된다. 이처럼 클래스로 나누어 IP 주소를 할당하는 방식을 클래스풀 어드레싱이라고 한다.

네트워크 번호를 할당하면 컴퓨터 번호, 이것을 호스트 번호라고 하는데 이 호스트 번호는 네트워크 관리자가 결정한다. , 호스트 번호의 비트가 모두 0이 되는 주소는 네트워크 주소, 모두 1인 주소는 브로드캐스트 주소이다.

·서브네팅에 대해 설명하라

클래스A에서 네트워크 관리자가 번호를 할당한다고 생각하면 너무 힘들다. 커다란 네트워크를 몇 개의 네트워크로 작게 분할하면 된다. 이렇게 분할된 작은 네트워크를 서브네트워크 또는 서브넷이라고 한다. IP 주소는 고정되어 있어서 새롭게 서브넷 번호를 추가하는 것은 불가능하다. 그래서 호스트 번호의 비트를 서브넷 번호와 호스트 번호로 분할하는 것이다. 즉 호스트 번호의 일부를 줄여서 서브넷 번호를 만드는 것이다. 서브넷은 그 네트워크의 내부에서만 유효하다. 이렇게 서브넷화 하는 것을 서브네팅이라고 한다.

·서브네팅의 문제점과 해결방안을 설명하라

그런데 문제가 하나 있다. 컴퓨터가 어느 네트워크에 소속되어 있는가라는 문제인데 IP 주소의 어디까지가 네트워크 주소인지 모르면 안 된다. 그래서 서브넷을 사용할 경우에는 서브넷마스크라고 불리는 비트열을 IP 주소와 동시에 표기해야 한다. IP 주소와 같은 32비트이고 네트워크 번호+서브넷 번호의 비트를 모두 1, 호스트 번호를 0으로 한다. IP 주소와 서브넷 마스크는 반드시 세트로 기술한다.

·클래스리스 어드레싱을 설명하라

지금은 클래스풀 어드레싱을 사용하지 않는다. 클래스 A, B, C라는 대략적인 구분밖에 없어서 구분에 딱 맞지 않으면 낭비가 많다. 그래서 클래스라는 구분을 없앤 어드레싱인 클래스리스 어드레싱이 나왔다. 원래는 클래스에 의한 할당 클래스풀 어드레싱을 해왔기 때문에 그 클래스를 통합해서 1개로 하는 것도 가능하다. 이것을 슈퍼넷이라고 부른다. 이게 클래스C의 네트워크를 8개 모아서 큰 네트워크로 만드는 것이다. 이때 어디까지가 네트워크 번호인지를 나타내는 값을 부여할 필요가 있다. 프리픽스 길이라는 것을 사용하는데 이는 네트워크 번호의 길이를 나타내는 값이다. IP 주소 뒤에 슬래시를 넣고 그 뒤에 프리픽스 길이를 쓰는 것이다.

·송신처 IP 주소를 어떻게 결정하는가

이더넷을 사용해서 IP 데이터그램을 송수신하기 위해서는 수신처 MAC 주소, 송신처 MAC 주소, 수신처 IP 주소, 송신처 IP 주소가 필요하다. 송신처 MAC 주소는 인터페이스에 고정되 있고 송신처 IP 주소는 송신할 인터페이스에 설정되어 있는 IP 주소를 사용한다. IP 주소는 정적인 것과 동적인 것 2종류가 있다. 정적인 것은 수동으로 IP 주소를 설정하는 방법이고, 동적인 것은 IP 주소가 자동으로 컴퓨터에 설정되는 방법이다. 이것은 DHCP(Dynamic Host Configuration Protocol)라고 하는 프로토콜을 사용한다.

DHCP는 할당할 IP 주소를 관리하고 실제로 할당 작업을 수행하는 서버하고 할당 받는 클라이언트로 이루어진다. 클라이언트가 서버에게 IP 주소 할당을 요청하면 IP 주소 풀에서 사용되고 있지 않은 주소를 선택하고 IP 주소를 할당한다. 이때 대여 기간이 필요하다. 왜냐하면 호스트가 이동하거나 고장 난 경우가 있으면 서버는 IP 주소를 할당했기 때문에 그 IP 주소는 이미 사용되고 있다고 생각하기 때문이다. DHCPIP 주소만이 아니라 다른 네트워크의 설정 정보도 보낼 수 잇다. 그래서 동적 호스트 설정 프로토콜이라고 불린다.

DHCP의 동작

클라이언트는 DHCP DISCOVER 메시지를 브로드캐스트한다.

DISCOVER를 받은 서버는 할당할 IP 주소를 풀에서 선택해서 그것을 클라이언트에게 브로드캐스트해서 통지한다.(DHCP OFFER)

클라이언트는 OFFER에서 받은 주소로 문제가 없으면 DHCP REQUEST를 서버에 브로드캐스트한다.

REQUEST를 받은 서버는 문제가 없으면 DHCP ACK를 보낸다. 그 때 서브넷마스크 등 옵션 설정도 ACK에 넣어서 보낸다.

·수신처 MAC 주소를 어떻게 결정하는가

수신처 IP 주소가 정해지고 이어서 수신처 MAC 주소를 결정한다. 여기에서 사용되는 것이 주소 해결 프로토콜 ARP(Address Resolution Protocol)이다. IP 주소의 호스트님, 당신의 MAC 주소를 알려 주세요 라고 질문하는 프로토콜이다.

사용자 애플리케이션이 .수신처 IP 주소를 결정한다.

수신처 IP 주소에 대해 MAC 주소를 질문한다.

IP 주소를 가진 컴퓨터는 MAC 주소를 가르쳐준다.

ARP의 동작

브로드캐스트로 ARP 요청을 보내고 대응하는 컴퓨터만 응답한다.

송신을 원하는 컴퓨터는 먼저 자신의 ARP 테이블을 참조한다.

ARP 테이블에 수신처 IP 주소가 없을 경우 ARP 요청을 브로드캐스트한다.

ARP 요청의 수신처를 확인하고 자신인 경우에는 응답한다. 그렇지 않은 경우는 파기한다.

ARP 응답을 받으면 ARP 테이블에 응답 결과를 추가로 기술한다.

ARP 테이블은 일정 기간이 지나면 파기된다. 왜냐하면 인터페이스 고장 등으로 MAC 주소가 변경되어도 대응할 수 있도록 하기 위해서다.

·수신처 IP 주소를 알아내는 방법

가장 간단한 방법은 수신처의 IP 주소를 알고 있으면 된다. 그런데 단순한 숫자인 IP 주소는 외우기 어렵다. 그래서 도메인명(Domain Name)을 사용한다. 도메인명은 송신할 상대의 컴퓨터 이름을 말하는 것이다. 도메인명은 IP 주소와 마찬가지로 ICANN이 관리하고 있다. 문제는 데이터 통신에는 IP 주소가 필요하다는 것이다. 그것을 결정하는 것이 DNS(Domain Name System)인데, DNS는 이름과 IP 주소를 대응시킨 시스템이다. 이름과 IP 주소의 대응 데이터베이스를 갖고 있는 DNS 서버에 문의해서 수신처의 IP 주소를 입수하는 것이다. DNS 서버는 각 조직에 1개씩 있고, 그 조직의 도메인 명만 관리한다. 다른 조직의 호스트 명과 도메인 명은, 그 조직의 DNS 서버에 묻는다. , DNS란 일종의 분산형 데이터베이스이다.

 

 

 

 

·데이터를 전송하기까지의 흐름

자신의 IP 주소는 수동 또는 DHCP에서 할당 받고, MAC 주소는 자동적으로 안다.

사용자 애플리케이션이 수신처의 도메인 명을 결정하면 DNSIP 주소를 획득한다.

IP 주소가 결정된 후, ARP에 의해 MAC 주소를 취득한다.

이것으로 송신처, 수신처의 MAC 주소, IP 주소를 알았기 때문에 데이터 전송이 가능해진다.

·라우터의 역할을 설명하시오

MAC 주소는 같은 네트워크 내에서의 수신처를 결정한다. 즉 다음 수신처를 결정하는 것이다.

IP 주소는 수신처의 컴퓨터를 결정한다. 즉 데이터의 최종 수신처이다.

A => B => C 같은 경로가 나온다.

라우터는 이 경로를 결정한다. 그런데 송신처에서 수신처까지의 길을 모두 이해하지는 못한다. 다음에 어디로 보내야 하는지를 결정하는 홉 바이 홉 방식을 사용한다. 이렇게 반복을 해서 전체 경로가 만들어지고 라우터는 네트워크의 경계상에 배치되어서 복수의 인터페이스를 가지고 복수의 네트워크끼리 연결을 한다. 또한 전송받은 데이터그램을 라우팅해서 다음 수신처를 결정하고, 전송받은 데이터그램에 대해 조건을 붙여 그 데이터그램을 파기하는 필터링 처리를 하기도 한다. 라우터가 없으면 다른 네트워크에 데이터를 보낼 수 없다.(라우팅은 간단하게 말하면 데이터그램의 수신처 IP 주소를 근거로 다음에 송신하는 라우터를 결정하는 것이다.)

·라우터가 없으면 다른 네트워크에 데이터를 보낼 수 없는가? 멀티액세스 네트워크에 다른 네트워크 컴퓨터가 연결되어 있으면 어떻게 되는가?

라우터가 없으면 다른 네트워크에 데이터를 보낼 수 없다. 같은 허브에 두 대의 컴퓨터가 연결되어 있고 각 각이 다른 네트워크에 소속되어 있다면 다른 네트워크에 소속되어 있는 컴퓨터에는 데이터가 전달되지 않는다. 허브는 플러딩되지만 컴퓨터는 다른 네트워크에 수신처가 있는 경우에는 라우터로 송신한다.’, ‘같은 네트워크에 수신처가 있는 경우에는 수신처에 직접 송신한다규칙 작용.

이 경우 컴퓨터가 지칭하는 라우터를 디폴트 게이트웨이라고 한다.

다른 네트워크 수신이면 라우터(디폴트 게이트웨이)로 동일 네트워크 수신이면 직접 통신한다.

·라우터의 동작을 라우팅 테이블을 이용해 설명하라

라우터는 라우팅 테이블을 가지고 있다. 최적 경로의 지도인데 이 지도에는 수신처 네트워크까지의 거리, 다음에 도달하는 라우터, 그 라우터에 연결되어 있는 자신의 인터페이스 등이 기재되어 있다. 라우팅 테이블에서 다음 수신처를 찾아내는 방식은 최장일치의 룰(Longest Match)이다. 이는 IP 주소의 비트열과 네트워크 주소의 비트열을 앞에서부터 순서대로 비교해서 가장 많이 일치하는 것부터 선택하는 것이다.

(라우팅 테이블에서 다음 수신처가 되는 라우터, 송신할 인터페이스를 결정한다.

호스트로부터 패킷을 수신받는다.

수신처 IP 주소로부터 수신처 네트워크를 결정한다.

라우팅 테이블에서 다음 중계할 라우터, 송신할 인터페이스가 결정된다.

결정된 인터페이스로부터 패킷을 송신한다.)

·브로드캐스트 도메인을 설명하시오

브로드캐스트가 도달하는 범위이다. 라우터는 브로드캐스트 도메인을 나눈다. 충돌 도메인은 스위치가 구분, 브로드캐스트 도메인은 라우터가 구분. 브로드캐스트 도메인=네트워크(라고 생각해도 무방)

질문

ip주소가 네트워크안에 있으면 arp테이블에 수신처ip주소가 있으니 arp를 브로드캐스트로 안보내는건가?? dd 맞는 듯 그리고 arp보냈는데 mac주소가 없어 그러면 시발 뭐지 다시 복습

·수신처 MAC 주소가 다른 네트워크이면 어떻게 알 수 있는가

라우터는 브로드캐스트를 중지해버리기 때문에 다른 네트워크에 있는 수신처 MAC 주소를 ARP로부터 입수할 수 없다. 디폴트 게이트웨이는 컴퓨터가 다음에 보낼 라우터라는 뜻이다. 즉 디폴트 게이트웨이가 네트워크의 출입구가 되고, 컴퓨터는 다른 네트워크에 데이터를 송신할 때 디폴트 게이트웨이로 ARP를 수행한다. 그래서 디폴트 게이트웨이의 IP 주소를 알아야 하고 디폴트 게이트웨이의 IP 주소를 미리 설정해 둔다.

동일 네트워크라면 수신처 IP 주소 수신으로 ARP를 실행해서 그 컴퓨터의 MAC 주소를 입수하면 된다.

·라우팅 테이블에 수신처 네트워크가 없으면 어떻게 되는가

수신처 불명으로 데이터그램을 파기한다. 스위치는 수신처를 모를 경우 플러딩하지만 라우터는 파기한다.

·라우팅 테이블을 어떻게 만드는가

라우팅 테이블은 수신처까지의 경로가 기재되어 있다. 이걸 알려면 라우터는 최적의 경로를 찾기 위해 다른 네트워크 경로를 모두 알아야 한다. 다른 네트워크 경로를 아는 방법에는 정적 라우팅과 동적 라우팅이 있다. 정적 라우팅은 관리자가 수동으로 경로를 입력하는 것이다. 정적 라우팅의 큰 단점은 수동으로 입력한 경로를 사용할 수 없게 되는 경우 우회로 변경을 수동으로 수행할 필요가 있다는 것이다. 관리자가 항상 붙어야 있어야 되는 것은 너무 힘들다. 그래서 라우터가 자동으로 정보를 서로 교환해서 경로를 알아내는 동적 라우팅을 한다. 동적 라우팅은 자동으로 최적의 경로를 선택해서 라우팅 테이블을 작성한다. 하지만 이것도 단점이 있다. 첫 번째는 회선 전송을 압박해서 데이터 전송에 사용되는 분량이 줄어든다는 것이다. 특히 저속 회선을 사용하는 경우에는 주의가 필요하다. 두 번째는 서로 교환한 정보를 가지고 최적의 경로를 계산해야 한다는 점이다. 라우터의 처리 능력이 필요하고 능력이 낮다면 데이터그램의 전송처리가 늦어질 수 있다. 세 번째는 모든 라우터가 동일한 정보를 가져야 한다(컨버전스)는 점이다.

·라우팅 프로토콜을 설명하라

라우팅 프로토콜은 근접해 있는 라우터 간의 네트워크 정보를 서로 교환하기 위한 규칙이다. 교환한 정보를 근거로 라우팅 테이블을 변경하는 것이다. 라우팅 프로토콜에는 AS 간 라우팅용과 AS 내부 라우팅용 두 가지가 있다. 각각, EGP(Exterior Gateway Protocol), IGP(Interior Gateway Protocol)라고도 부른다.

라우터는 근접해 있는 라우터 간의 네트워크 정보를 서로 교환한다. 그리고 정보교환을 언제 할지, 어떻게 할지, 누구에게 전송할지, 어떤 정보를 전송할지 같은 것을 라우팅 프로토콜이 결정하는 것이다. 그리고 라우팅 프로토콜이 결정한 방식에 따라 정보를 교환해 컨버전스 상태에 도달한다. 이렇게 교환한 경로 정보를 기준으로 최적의 경로를 라우팅 테이블에 기재한다. 그렇게 해서 항상 최적의 경로가 사용 가능하게 된다.

 

AS(Autonomous System)(자율화 시스템)은 하나의 관리 단체에 의해 관리되는 네트워크 집합체이다. 복수의 네트워크를 통합해서 큰 단위의 라우팅을 수행하는 것이다.

 

 

 

·메트릭이 무엇인가

최적의 경로를 결정할 때의 판단기준.

·RIP의 동작을 설명하라

라우터가 다른 라우터와 교환하는 정보를 RIP에서는 라우팅 업데이트라고 부른다. 이때 라우팅 테이블을 그대로 교환한다. 30초에 1번 보낸다. 6번 수신 받지 않는다면 그 라우터를 사용하는 경로들을 파기해버린다.

RIP에서는 메트릭에서 홉 수를 사용한다. (홉 수 : 수신처 네트워크까지 통과하는 라우터 수)

RIP는 간단히 말해서 업데이트를 수신하면, 자기가 모르는 네트워크를 테이블에 추가하는 건데 그때, 업데이트를 보내 온 라우터를 그 앞의 네트워크에의 중계 라우터로, 업데이트를 받은 인터페이스를 그 앞의 네트워크에의 송신 인터페이스로 정하도록 하는 것이다. 또한 이미 테이블에 존재하는 네트워크에 대해서 새로운 정보가 업데이트되어 새로운 경로 쪽이 메트릭이 작으면 그쪽을 테이블에 기재한다.

·라우팅 프로토콜 다른건 책에 안나옴

·ICMP 프로토콜을 설명하라

ICMP(Internet Control Message Protocol)는 인터넷 제어 메시지 프로토콜, 에러 보고 프로토콜이다. 네트워크의 제어, 관리에 사용된다. IP 데이터그램에 ICMP 메시지를 넣는다. IP 헤더 + ICMP 메시지 형태가 되는 것이다. ICMP 메시지는 타입, 코드 등이 있다.

ICMP에는 상태를 조사하기 위해 사용되는 Query 메시지와 에러를 통지하기 위한 Error 메시지가 있다.

IP 헤더 항목 : TTL(Time To Live) : 생존시간

IP 데이터그램의 TTL은 라우터를 경유할 때마다 1만큼 줄어들고 0이 되면 그 데이터그램은 파기

리눅스에서는 64, 윈도우에서는 128개인 경우가 대부분(경유)

 

 

 

 

 

타입 3 : Destination Unreachable 수신처 도달 불가

타입 0 : Echo Reply

타입 8 : Echo Request

·ping이 뭐야

ICMP 타입08에 에코라는 개념이 있다. 에코 요청을 수신하면, 에코 응답을 보낸다. 이 에코 개념을 이용한 ping이라는 임의의 수신처에게 에코 요청을 보내는 소프트웨어가 있다. 에코의 요청과 응답을 주고 받으면 그것은 송신처와 수신처 간의 데이터를 송수신할 수 있다는 의미다. 또 시간을 측정해서 네트워크 상태를 조사할 수도 있다.

타입 11 : Time Exceeded 시간 초과에 의한 패킷 파기

·tracerouter가 뭐야

tracerouter는 수신처에 도달하기까지 경유하는 라우터를 가르쳐주는 소프트웨어다. TTL은 끊어진 패킷을 파기하는데, 이때 파기한 것을 통지하는 메시지가 ICMP 타입 11 Time Exceeded.

·4계층의 역할을 설명하시오

4계층은 전송계층으로 4계층 이상의 상위 계층에서는 데이터를 운반하는 직접적인 작업을 하지 않고 전달할, 전달된 데이터에 대해 필요한 처리를 한다. , 3계층까지는 수신처 자체가 존재하지 않거나 데이터가 도중에 손실됐거나 에러에 의해 파기됐다는 등의 문제들은 신경 쓰지 않는다. 그래서 4계층의 첫 번째 역할으로 에러 복구를 한다. 도달하지 않은 경우에 다시 보냄으로써 에러를 없었던 것으로 하는 것이다. 그리고 두 번째 역할으로 신뢰성이 높은 통신을 위해서 에러를 복구하고 통신 상태도 확인하는 것을 흐름 제어라는 방식으로 수행한다. 처리 능력을 넘어선 정보를 받았을 때, 그것을 다 처리할 수 없어서 파기해 버리는 것이다.

·근데 너 컴퓨터에서 인터넷으로 회원가입을 하면 너 컴퓨터에서 너 컴퓨터로 가는거야?? 데이터 통신을 해서 데이터를 주고 받는 것은 컴퓨터와 컴퓨터일까??

아니요. 통신에서 데이터를 주고받는 컴퓨터 소프트웨어를 애플리케이션이라고 부른다. 실은 데이터를 주고받는 것은 애플리케이션이다.

·포트 번호가 무엇인가

어느 애플리케이션이 송신한 데이터인지 어느 애플리케이션이 수신한 데이터인지 결정하기 위해 포트 번호라는 것이 부여된다. 각 컴퓨터 내부에는 통신 데이터를 흐르게 하기 위한 가상의 출입구가 있다. 각 애플리케이션은 그 중의 하나를 선택해서 데이터 송수신의 입구로 삼는 것이다. 즉 애플리케이션과 TCP/IP 통신기능을 연결하는 길이다. 포트 번호로 데이터를 보낼 애플리케이션을 특정한다. IP 주소와 포트 번호를 사용해서 어느 컴퓨터의 어느 애플리케이션인지 식별한다. 수신처 포트 번호를 모르면 데이터를 보낼 수 없다.

·웰노운 포트를 설명하시오

서비스를 제공하고 싶은 애플리케이션이 사용하는 1~1023번까지의 포트이다. 1024~49151번까지는 등록된 포트라고 부르는데 미리 등록되어 있는 포트를 말하는 것이다. 이들은 이미 정해진 애플리케이션과 연결되어 있다. 송신하는 측의 애플리케이션은 이런 번호 이외의 49152~65535번까지의 번호 중에서 원하는 번호를 선택해서 사용한다.

·TCP의 커넥션에 대해 설명하시오

TCP에서는 애플리케이션 간의 데이터 송수신을 한다. 이 애플리케이션 간의 송수신을 하는 데이터의 길을 커넥션이라고 한다. 3계층의 라우팅의 경로와는 다른의미로 가상적인 통신로이다. 데이터 전송을 시작하기 전에 미리 확인을 주고받아 두는 것이다. 그렇게 해서 상대에게 확실하게 전달한 것을 확인하는 것이다. 이 가상의 통신로를 만들어 내는 것을 커넥션 확립이라고 한다.

·커넥션 확립에 대해 설명하시오

커넥션을 확립하기 위해서는 상대가 데이터 전송을 허가해 줘야 한다.

그래서 통신로를 확보하기 위해 상대에게 데이터 전송의 허가 요청을 보낸다. 그리고 요청을 받은 상대는 그것에 대한 허가를 송신처에게 알린다. 이것으로 데이터가 상대에게 바르게 전달된 것을 확인할 수 있다.

이제 반대로 수신처 측이 송신처에게 데이터 전송 허가 요청을 보낸다. 그것에 대해 송신처도 데이터 전송 허가를 보내고, 이로써 쌍방향의 통로가 확보된다.

이 커넥션의 확립에는 3번 주고받아야 하기 때문에 쓰리웨이 핸드쉐이크라고 한다.

·세그먼트 분할에 대해 설명하시오

TCP는 애플리케이션으로부터 받은 데이터(메시지)를 세그먼트로 캡슐화한다.

한 개의 데이터를 MSS(Max Segment Size)로 분할한다. 이때 한 개의 데이터가 복수의 세그먼트이다. 그리고 각각의 세그먼트에 선두 번호를 부여(시퀀스 번호)

·에러복구의 과정에 대해 설명하시오

TCP에서는 시퀀스 번호를 사용해서 에러를 복구한다.

확인응답 : 세그먼트를 수신하면, 수신한 것을 송신처에게 전달

데이터 송신 시에는 시퀀스 번호가, 확인응답에는 확인응답 번호가 중요

시퀀스 번호는 보내는 데이터의 앞 부분에 있는 옥텟이고, 확인응답 번호는 다음에 받고 싶은 데이터의 선두 옥텟 번호다.

시퀀스 번호로 세그먼트가 보내는 데이터가 전체의 어느 부분에 해당하는 지를 알 수 있고, 확인응답 번호로 다음에 받고 싶은 데이터 번호를 알린다.

이 방식은 흐름제어에서도 중요하다. 에러가 발생해서 데이터가 상대방에게 도달하지 않았거나 확인응답이 도달하지 않았을 때에는 재전송을 하는 것이다. 일정시간 기다린다는 것은 RTT(Round Trip Time)라는 값으로 판단한다. RTT는 지금까지 보낸 데이터에 대해 확인응답이 돌아오기까지 걸린 시간으로 계산하는 것이다.

·윈도우 제어에 대해 설명하라

세그먼트 송신 => 확인응답 이라는 흐름은 시간이 너무 걸린다. 그래서 복수의 세그먼트전송 => 확인응답 형태로 바꾼다. 이때 정확, 확실, 효율적으로 보내기 위해 TCP는 흐름제어의 하나인 윈도우 제어를 한다. 윈도우 제어에는 버퍼가 존재한다. TCP에서는 데이터가 넘치는 오버플로를 막기위해 자신이 어느정도 버퍼량을 가지고 있는지 알려줘야 한다. 이것을 윈도우 사이즈라 하고, 윈도우 사이즈를 상대방에게 알려줌으로써 윈도우 사이즈만큼의 데이터를 한번에 보내도 오버플로 하지 않는다는 것을 알 수 있다. 즉 윈도우 사이즈는 확인응답을 기다리지 않고 보낼 수 있는 데이터 양이다.

·TCP의 단점을 설명하시오

TCP의 특징은 정확, 확실이고 단점은 그 정확, 확실이 독이 될수도 있다는 것이다. 정확, 확실하게 데이터를 주고받기 위해서 TCP는 쓰리웨이 핸드쉐이크, 에러 복구, 흐름제어를 한다. 불편하고 확인응답을 기다리는 시간이 치명적이다.

·UDPTCP와 비교해서 설명하시오

UDP4계층의 프로토콜이고 TCP와 따로 사용된다. UDP의 헤더에는 포트 번호밖에 없다. 즉 아무것도 하지 않는다. UDP의 장점이자 최대 특징은 확인응답을 하지 않아서 전송 효율이 떨어지지 않고 고속이라는 점이다. UDP는 고속성이나 실시간 송수신이 필요한 애플리케이션에 사용된다. 그리고 브로드캐스트가 필요한 애플리케이션도 UDP를 사용한다. TCP는 브로드캐스트 x

TCP는 HTTP, SSH, FTP등이 잇고 UDP는 DNS, DHCP등이 있다.

TCP 헤더가 있는 데이터 : 세그먼트

UDP 헤더가 있는 데이터 : UDP 데이터그램

·글로벌 IP 주소와 사설 IP 주소를 설명하시오

ICANN이 관리하는 유일한 IP 주소를 글로벌 IP 주소라고 한다. 반면 인터넷에 연결하지 않는다는 조건으로 자유롭게 사용할 수 있는 주소를 사설 IP 주소라고 부른다. 인터넷에 접속하지 않고 TCP/IP를 사용할 경우에는 이 IP 주소를 사용하면 된다. 그런데 이 사설 IP 주소가 부족하다. 이를 해결하기 위한 방법은 클래스리스 어드레싱, IPv6, 네트워크 주소 변환(Network Address Translation)이 있다.

클래스C 사설 IP 주소

192.168.0.0~ 192.1680.255.0 256

·NAT에 대해 설명하시오

NAT (Network Address Translation) 네트워크 주소 변환

내부 네트워크에는 사설 IP 주소를 할당한다. 왜냐하면 내부 네트워크 내에서 TCP/IP를 사용한 통신을 하기 위해서다. 그런데 이 NAT에는 동시 접속 수의 문제가 있다. 보유하는 글로벌 IP 주소 수 이상의 호스트는 인터넷에 동시 접속할 수 없다. NAT에서 변환되는 주소는 유일해야 한다. 이러면 접속하고 싶은 호스트 수만큼 글로벌 IP 주속 필요하다. 그래서 NAT을 발전시킨 NAPT가 나왔다.

(사설 IP 주소를 글로벌 IP 주소로 변환한다.

내부 네트워크에서 인터넷에 송신한다. 라우터에는 ICANN과 하부조직에 의해 조직용으로 글로벌 IP 주소가 주어져 있다.

라우터는 NAT을 수행해, 송신처 IP 주소의 사설 IP 주소를 글로벌 IP 주소로 변경해서 인터넷 수신처에 보낸다. 이 변경 사항은 기록으로 남는다.(NAT 테이블에 저장)

수신 받은 인터넷에 있는 서버는 응답을 한다. 물론, 이때 수신처는 변환 후의 글로벌 IP 주소이다.

패킷을 수신한 라우터는 NAT 테이블에 따라 수신처 IP 주소를 사설 IP 주소로 변경해 내부 네트워크에 송신한다. NAT 테이블을 일정시간 후에 파기된다.)

·NAPT에 대해 설명하시오

NAPT Network Address Port Translation

하나의 글로벌 IP 주소로 복수의 컴퓨터를 접속 가능하게 한다. IP 주소 뿐만 아니라 포트 번호도 변환해서 복수의 컴퓨터 접속을 가능하게 한다. 이 때문에 보안 측면에 효과가 있다. 반면에 그 보안이 NAPT의 단점이기도 하다. 그것은 LAN 내부에서 외부로 공개하고 싶은 서버가 있을 경우다. NAPT 테이블에 저장되어 있지 않은 것은 LAN 내부에 들어오지 못한다. 가능하게 하려면 NAPT 테이블에 미리 변환을 저장시켜 주면 된다. 보통은 NAPT가 자동적으로 포트 번호를 변환하는데, 여기서는 수동을 변환을 입력해 두는 것이다. 이것을 정적 NAPT라고 한다. NAPTFTP를 사용할 수 없다. 마찬가지로 데이터 부분에도 수신처의 IP 주소와 포트 번호가 기술되는 것은 안된다. NAPT를 수행하는 기기가 개별적으로 대응할 수 밖에 없다.

·5계층에 대해 설명하시오

5계층은 세션계층이다. 애플리케이션 간의 의논의 관리가 세션계층의 역할이다. 간단하게 말하면 대화가 성립하도록 제어를 하는 것이다. 이것을 다이얼로그 제어라고 한다.

·6계층에 대해 설명하시오

6계층은 표현계층이다. 6계층에서 변환을 해서 하드웨어랑 OS에 따른 차이를 없앤 데이터 교환이 가능하게 된다. 그 밖에도 압축이나 암호화를 수행할 수도 있다. 이렇게 애플리케이션과는 동떨어진 데이터 형식의 전송을 위한 변환이 6계층이 하는 역할이다

·7계층에 대해 설명하시오

7계층은 응용계층이다. 7계층은 위에 계층이 없고 애플리케이션 밖에 없다. 즉 애플리케이션의 목적에 따라 네트워크 서비스를 제공하는 계층이다. 7계층에는 각각의 목적에 따른 프로토콜이 준비되어 있다.

·OSI 참조 모델을 간단히 설명하라

7계의 계층으로 나뉘어 있고, 각각의 계층은 독립되어 있다. 각 계층은 독립해서 생각할 수 있고 하위 계층은 상위 계층을 위해 일하고 상위 계층은 하위 계층을 생각하지 않는다.

7응용

6표현

5세션

4전송

3네트워크

2데이터링크

1물리

5~7계층은 4계층 이하의 기능에서 애플리케이션별로 도달한 데이터를 처리한다. 7계층은 네트워크 서비스를 실시, 6계층은 데이터 형식을 변환, 5계층은 세션을 관리한다. 이들은 TCP/IP에서는 동일 프로토콜로 처리된다.

4계층은 정확, 확실한 TCP, 고속의 UDP 프로토콜이 있다. 확인응답을 기다리고 기다리지 않는 것에서 차이가 난다. 4계층은 3계층 이하의 기능으로 컴퓨터에 도달한 데이터에 대해 신뢰성이 높은 데이터 통신을 5계층에 제공하는데, 애플리케이션을 식별하고, 각각에 대해 신뢰성이 있다, 없다를 제공한다. 이때 식별이란 포트번호이다.

그 하위의 3계층은 2계층 이하의 기능에서 케이블에 접속된 기기 간의 데이터 통신을 사용해 다른 네트워크 간의 접속을 4계층에게 제공한다. 즉 인터넷 작업을 수행하는 것이 그 역할이다. IP 주소나 라우팅

4계층은 3계층에 의해 서로 다른 네트워크 간에서도 데이터 전송이 가능하게 되는거고, 반대로 3계층은 2계층 네트워크 내에서의 기기 간 데이터 전송을 통해서 네트워크 간의 접속을 수행하는 것이다.

2계층은 1계층의 기능에서의 전기적인 데이터를 사용해서 서로 다른 기기의 데이터 송수신을 3계층에 제공한다. 2계층은 이더넷. CSMA/CD 제어로 충돌이 발생하지 않게 효율적으로 운영하고, 네트워크 내의 데이터 전송을 3계층에 제공한다.

1계층은 전기와 신호를 담당한다. , 케이블과 신호를 2계층에 제공하는 것이다.

 

 

모두의 네트워크

데이터를 물리 계층에서 전기 신호로 변환할 때 랜 카드가 사용

회사에서는 서버를 운영하기 위해 서버를 사내에 설치하거나 데이터 센터에 두거나 클라우드에 둘 수 있다. 참고로 사내 또는 데이터 센터에 서버를 두고 운영하는 것은 온프레미스(on-premise)

트위스트 페어 케이블 : UTP, STP (랜 케이블, 랜선) 8개중 1236만 사용

1. 다이렉트 케이블 : 컴퓨터와 스위치를 연결할 때 사용

2. 크로스 케이블 : 컴퓨터 간에 직접 랜 케이블로 연결할 때 사용

사설ip, 공인ip 주소 달라. 이미 정해져있어 c클래스 사설ip192.168.0.0~192.168.255.255까지야

ip : 네트워크id+호스트id

연결성 tcp

비연결성 udp

 

WWW(World Wide Web)(W3나 웹(Web)) : 거대한 통신망인 인터넷은 수많은 사이트, 데이터, 정보를 갖고 있으며, 통신 회선이 거미줄처럼 서로 연결되어 있어서 언제 어디서든 필요한 곳에 접근하거나 정보를 공유하고 주고받을 수 있는 멀티미디어 인터넷 서버다. HTML, URL, HTTP 세가지 기술 사용

HTML(HyperText Markup Language)은 웹 페이지에서 문장 구조나 문자를 꾸미는 태그를 사용하여 작성하는 마크업 언어

URL은 인터넷에서 파일 위치를 지정하기 위해 기술된 주소다. 웹 사이트 주소를 지정하기 위해 사용된다.

URL(Unifom Resource Locator)에는 호스트 이름과 도메인 이름이 있다.

www.naver.com에서 naver.com은 도메인 이름, www는 호스트 이름

클라이언트는 웹 사이트를 보기 위해 서버의 80번 포트를 사용하여 HTTP(80) 통신을 한다. 클라이언트에서 HTTP 요청(request)을 보내고 서버에서 HTTP 응답(response)을 반환한다.

 

FTP(File Transfer Protocol) : 파일 전송 프로토콜. 제어 용도로는 21, 데이터 전송 용도로는 20

메일 서버와 구조(SMTPPOP3)

SMTP(25)POP3(110)로 메일 전송

SMTP를 사용하여 컴퓨터 1에서 메일 서버 1로 메일을 보낸다.

SMTP를 사용하여 메일 서버 1에서 메일 서버 2로 메일을 보낸다.

POP3를 사용하여 메일 서버 2에서 컴퓨터 2로 매일 데이터를 보낸다.

메일을 수신할 때는 사용자 이름과 비밀번호를 이용한 사용자 인증이 필요하니 주의.

 

무선랜은 무선 액세스 포인트(Wireless Access Point, WAP)와 무선 클라이언트(컴퓨터나 스마트폰 등)로 구성

컴퓨터가 무선 액세스 포인트와 통신하려면 무선 랜칩과 무선 랜 어댑터가 필요하다.

최근 컴퓨터는 대부분 무선 랜칩을 내장

무선 랜 어댑터에는 USB 메모리 방식 어댑터와 컴퓨터 카드 방식 어댑터가 있다.

무선 랜을 구성하는 장비 중에서 무선 액세스 포인트를 무선 공유기 또는 무선 AP라고 부르기도 한다.

무선 랜을 연결하는 방식에는 인프라스트럭처 방식과 애드혹 방식이 있다.

인프라스트럭처 방식은 무선 액세스 포인트를 통해 통신하는 방식(공유기) (많이 쓰여)

애드훅 방식은 무선 클라이언트끼리 직접 통신하는 방식

무선 랜 규격 IEEE802.11

무선 액세스 포인트와 무선 클라이언트를 연결하려면 혼선을 피하기 위해 SSID(Service Set IDentifier)라는 액세스 포인트의 고유 이름을 사용한다. 그리고 네트워크 이름, 인증, 암호화, 암호화 키를 설정해야 한다.

무선 액세스 포인트는 비컨(beacon)이라고 하는 자기를 알리는 신호를 네트워크에 있는 모든 기기에 주기적으로 전송, 무선 클라이언트는 이 신호를 잡아서 연결, 신호를 받은 무선 클라이언트는 자신의 SSID와 같은지 무선 액세스 포인트에 문의, 같은 SSID의 무선 액세스 포인트가 응답을 하고 서로의 존재를 알게 된다. 그 다음으로 설정된 인증 방식이 올바른지 확인되면 무선 클라이언트는 무선 액세스 포인트에 연결을 요청하고, 무선 액세스 포인트로부터 승인을 받으면 연결하여 통신할 수 있게 된다.

 

무선 액세스 포인트와 무선 클라이언트 사이의 거리가 멀수록 전파가 약해져서 접속이 잘 안되거나 통신 속도가 느려진다. 그래서 무선 액세스 포인트를 여러 대 설치해야 한다. 무선 랜은 여러 기기를 동시에 연결할 수 있도록 주파수 대역을 분할하는데, 그 주파수 대역을 채널이라고 부른다. 무선 공유기 두 개가 있다면 다른 채널을 설정해야 한다. 전파가 겹치는 무선 공유기들이 같은 채널로 설정되어 있으면 주파수가 겹치면서 전파 간섭이 생기고 통신 속도도 느려진다. 무선 액세스 포인트는 기본적으로 자동으로 설정되니 알아서 최적의 채널을 찾아 준다.

 

웹 동작 어떻게 하니???

www.naver.com을 입력했을 때 일어나는일

 

먼저 dns서버에 연결해서 ip 주소를 받아온다.

7응용 http프로토콜로 서버 ip에 요청을 보낸다.

6표현 데이터의 형식을 결정

5세션 세션을 결정.(데이터 송수신 순서)

4전송 tcp헤더 붙여서 세그먼트로 만들어. 쓰리웨이 핸드쉐이크로 먼저 커넥션 확립. tcp헤더에 송수신 포트 넣는다.http라서 수신은 80

3네트워크 ip헤더 붙여서 패킷(데이터그램)으로 만듬. ip송수신주소 지정. 송신은 dhcp 프로토콜로 가져와. 수신주소는 위에 있지

2데이터링크 이더넷헤더 붙여. 트레일러도(fcs 에러체크용 비트열) 헤더에 mac송수신 주소. mac송신주소는 인터페이스에서 자동으로. 수신주소는 arp프로토콜로 알아.

1물리 데이터를 신호로 바꿔줘.

캡슐화

 

그리고 같은 네트워크 안(허브, 스위치)에서는 2계층 역캡슐화했다가(이더넷 프레임의 목적지 mac주소와 자신의 mac주소가 같다면 역캡슐화하는거야) 다시 2캡슐화.

라우터로 가면 3계층에서 출발지 ip주소를 바꿔(lan에서 wan)그다음 2계층에서 헤더 트레일러 붙이고 물리계층에서 신호로 전달

 

라우터에서 라우터로 전달

(라우팅 테이블과 목적지 ip 주소를 확인해 -- 그다음 라우터도 목적지의 네트워크를 알아야 하니까)

위랑 같아.

 

마지막 라우터의 라우팅 테이블을 보면 목적지 ip 주소의 경로를 알 수 있으므로 라우팅을 할 수 있다. 그리고 출발지 ip주소를 내부 ip주소로 변경

스위치로 갔다가 웹 서버로 전송

 

역캡슐화

2계층에서 mac주소 비교. 맞으니 이더넷 헤더 트레일러 분리. 네트워크 계층에 전달

네트워크 계층에서 ip 주소 확인. 같으면 ip헤더 분리하고 전송 계층에 전달

전송계층에서 포트 확인. tcp헤더 분리하고 으용계층에 전달

응용계층에서 http 프로토콜 전달(원하는 내용) get index라던가

 

728x90
LIST
댓글
공지사항