통신의 기초
모든 통신은 3가지 공통 요소를 가진다.
· 발신자
· 수신자
· 채널 또는 미디어
프로토콜과 규칙은 모든 통신 방법을 통제한다.
규칙 설정
프로토콜은 효과적인 의사소통을 위하여
· 식별된 발신자와 수신자
· 공통된 언어와 문법
· 속도와 전송 타이밍
· 확인 또는 승인 조건
을 포함한다.
네트워크 통신에 사용되는 프로토콜의 정의
· Message encoding ( 변환 )
- 메시지는 발신자의 호스트에서 비트로 변환된다.
- 비트는 네트워크 매체에 따라 소리의 패턴, 광파, 전기적 신호로 변환된다.
- 대상 호스트가 메시지를 해석하기 위하여 신호를 수신하고 해독한다.
· Message delivery options ( 전송 옵션 )
- 유니캐스트 : 전송할 때 한 번에 하나의 호스트에게 전송
- 멀티캐스트 : 전송할 때 한 번에 특정 호스트에게 전송
- 브로드캐스트 : 전송할 때 한 번에 모든 호스트에게 전송
· Message Formatting and Encapsulation ( 형식, 캡슐화 )
- 주소(IP, MAC)를 지정된 봉투(Frame)에 넣는 것을 캡슐화라고 한다.
- 메시지는 네트워크로 전송되기 전에 프레임이라고 불리는 특정한 형식으로 캡슐화가 된다.
- 프레임은 발신자의 주소와 수신자의 주소를 제공하는 봉투의 역할을 한다.
- 7 계층 - > 1계층 (IP, MAC , TCP/UDP를 붙이는 것을 캡슐화)
- 1 계층 - > 7계층 역 캡슐화
· Message Timing ( 타이밍 )
- 접근법(규칙) : 먼저 접속한 디바이스가 끝날 때까지 기다리는 룰이 접근법이다.
메시지를 보낼 때 충돌이 발생하면 어떻게 응답할지 알아내야 한다.
- 흐름 제어 : 수신 및 발신 호스트는 흐름 제어를 사용하여 한쪽의 일방적인 전송을 피하고 타이밍을 맞춘다.
- 응답 시간 초과 : 네트워크 상의 호스트는 응답 시간이 지연되거나 초과가 발생할 경우 수행할 작업을 지정하는
규칙을 가진다.
- 정해진 응답시간을 초과할 경우 재전송
· Message Size ( 크기 )
- 긴 메시지를 네트워크를 통해 이동하기 위해서 작은 조각으로 나눈다.
- 조각들은 독립된 프레임으로 전송된다.
통신을 제어하는 규칙
· 프로토콜은 소프트웨어와 하드웨어 안의 호스트와 네트워크 장비에 의해 시행된다.
· 프로토콜은 하위 레벨에 나타낸 프로토콜에 의해 정의된 기능성에 따라 각 상위 레벨의 서비스를 계층 관점에서 본다.
· 프로토콜의 측면은 하위 레벨에서 보인 기능에 의해 정의된 측면으로 본다.
네트워크 프로토콜
· 네트워킹 프로토콜은 기기 간에 메시지를 교환하기 위한 공통 형식과 규칙 집합
· 네트워킹 프로토콜로 HTTP(하이퍼 텍스트 프로토콜 : 7 Layer), 전송 제어 프로토콜 (TCP : 4 Layer), 인터넷 프로토콜 (IP : 3 Layer)
프로토콜 상호작용
- 웹 서버와 웹 클라이언트 간의 통신은 다음과 같은 프로토콜 간의 상호작용의 한 예다.
· HTTP : 웹 서버와 웹 클라이언트가 상호작용하는 방식을 제어하는 응용 프로그램 프로토콜
· TCP : 개별대화를 관리하는 전송 프로토콜
· IP : TCP 세그먼트를 패킷으로 캡슐화하고, 주소를 할당하여 대상 호스트에 전달
· Etherner : 데이터 링크를 통한 통신과 네트워크 미디어의 데이터 물리적 전송을 허용
ARPANET : 현재 인터넷의 조상
미국 국방부의 자금 지원을 받아 구축한 전산망
TCP/IP 프로토콜
· DNS : naver와 같이 IP를 입력하여 접속하는 것이 아닌 이름만으로 해당 IP에 접속하는 시스템
· BOOTP : os가 없을 때 IP도 없기 때문에 그런 상황에 사용한다.
· DHCP : 자동으로 IP를 할당받는다.
· FTP : 파일을 전송할 때 사용하는 프로토콜
· TFTP : 네트워크 장비를 백업할 때 사용
· SMTP : 서버와 서버 간에 통신할 때 사용
· IP : 아이피 주소는 유일해야 한다.
아이피 주소는 고갈되는 아이피 주소를 늘리기 위해 사설 아이피를 사용한다.
중복이 되는 사설 아이피 때문에 라우팅이 안 되는 단점이 있다.
이를 해결하여 인터넷이 되게 하기 위해서 nat을 사용한다.
nat이 공유기나 라우터의 외부 주소를 내부 주소로 바꿔주는 역할을 한다.
· HTTP : 80번 포트 HTTPS : 443번 포트
· ICMP : 해킹 공격이 많아서 보통 받아둔다.
· PPP : WAN 쪽 연결할 때 사용
· Interface Drivers : 인터페이스 카드를 사용하기 위한 드라이버 프로그램
TCP/IP 통신 과정
· 웹 서버는 HTML 페이지를 준비하고 HTTP 애플리케이션 계층 프로토콜은 데이터를 전송계층으로 전송한다.
· 전송계층은 데이터를 세그먼트로 세분화하여 각각 식별하고 네트워크 계층으로 전송한다.
· 네트워크 계층은 헤더에 송신지와 수신지의 IP주소를 추가하여 패킷을 생성하여 데이터링크 계층으로 전송한다.
· 데이터 링크 계층은 이더넷 정보(MAC)를 헤더에 추가하고 오류 검사 비트를 추가하여 프레임을 만든다.
· 이 프레임은 웹 클라이언트로 향하는 경로를 따라 라우터로 전송되고 라우터는 새로운 MAC 주소를 추가하여
전 송지로 전송한다.
· 웹 클라이언트가 웹 서버에서 데이터 링크 프레임을 수신할 때 이더넷, IP,... , 등 순으로 헤더와 테일을 제거한다.
· 이러한 헤더를 한 겹씩 벗기는 과정을 역 캡슐화라고 한다.
· 마지막으로 HTTP 정보가 처리되어 클라이언트 웹 브라우저로 전송된다.
데이터 계층화의 이점
· 각 계층의 프로토콜이 기능을 정의했기 때문에 프로토콜 설계에서 지원한다.
· 서로 다른 공급 업체의 제품이 함께 작동할 수 있기 때문에 경쟁이 촉진된다.
· 하나의 계층의 기술 변화가 다른 계층에 영향을 주는 것을 방지한다.
· 네트워킹 기능 및 기능을 설명하는 공통 언어를 제공한다.
OSI 참조 모델
· Application(응용) Layer : 프로세스 간 통신에 사용되는 프로토콜
· Presentation(표현) Layer : 데이터의 일반적인 표현을 제공한다.
· Session(세션) Layer : 프레젠테이션 계층의 대화를 정리하고 데이터 교환을 관리하기
위한 서비스를 제공한다.
· Transport (전송) Layer : 데이터를 세분화, 전송 및 재조립하기 위한 서비스를
정의한다.
· Network(네트워크) Layer : 식별된 최종 장치들 간에 네트워크를 통해
개별 데이터 조각을 교환하는 서비스를 제공한다.
· DataLink(데이터링크) Layer : 공통 매체를 통해 장치 간에 데이터 프레임을 교환하는
방법을 제공한다.
· Physical(물리) Layer : 물리적 연결을 통해 비트를 전송하는 기계적, 전기적, 기능적및 절차적 수단을 설명한다.
IP의 최대 크기는 1500 Byte이다.
이것을 MTU라고 부른다.
만약 IP의 크기가 MTU보다 작다면 프래그먼트를 곱해준다.
이 프래그먼트는 아이피 주소를 곱한 것이다.
OSI 모델과 TCP/IP 모델 비교
OSI의 7~ 5 계층 -> TCP/IP의 Application 계층
4 계층 -> Transport 계층
3 계층 -> Internet계층
1~2 계층 -> Network Access계층
자료의 캡슐화 : 메시지 분할 ( TCP )
· 대량의 데이터 흐름은 네트워크를 통해 전송하기 위해 더 작고 관리하기 쉬운 조각으로 나뉜다.
· 작은 조각들을 보낼 때 중간중간에 여러 개의 데이터들을 인터리빙
(데이터가 보내지는 흐름 틈 사이사이에 데이터 조각을 끼워 넣는 것) 할 수 있다.
-> 이러한 과정을 다중화라고 한다.
데이터 캡슐화 : 프로토콜 데이터 단위
· 응용 프로그램 데이터가 프로토콜 스택에 전달되면, 각 레버에 정보가 추가된다.
-> 이것을 캡슐화 프로세스라고 한다.
· 데이터가 각 계층에서 가지는 형태를 프로토콜 데이터 단위( PDU )라고 한다.
· 데이터 - 응용계층 PDU
· 세그먼트 - 전송계층 PDU
· 패킷 - 네트워크 계층 PDU
· 프레임 - 데이터링크 계층 PDU
· 비트 - 물리계층 PDU
데이터 캡슐화의 예
· 데이터는 세그먼트로 나뉘고 TCP 세그먼트는 IP 패킷에 캡슐화된다.
· IP 패킷은 이더넷 프레임 안에서 캡슐화된다.
데이터 캡슐화 해제
· 캡슐화의 반대로 과정을 진행한다.
네트워크 주소
· 네트워크 계층의 소스와 수신지 주소
-> 원본 소스 주소에서 수신지 주소로 IP 패킷을 전달한다.
데이터 링크 주소
· 하나의 네트워크 인터페이스에서 같은 네트워크 상의 다른 하나의 네트워크 인터페이스로 데이터링크 프레임을
전달하는 것
PC1에서 Web Sever로 데이터를 전송할 때 PC1은 자신의 네트워크 상의 라우터로 데이터를 보내고
라우터에서 MAC 주소를 확인하고 IP주소를 확인한 다음 목적지 IP가 아니기 때문에 다음 라우터의 MAC 주소를 데이터 헤더에 추가하여 외부 라우터로 전송한다.
외부 라우터에서도 MAC 주소를 확인하고 IP주소를 확인한 다음 데이터의 헤더부분에 목적지 MAC 주소를 입력하여
준 다음 목적지로 데이터를 전송한다.
즉 우리가 메시지를 보낼 때 IP주소는 목적지의 IP주소를 넣지만 MAC 주소는 같은 네트워크에 있는 라우터의 MAC 주소를 입력하여 라우터까지 데이터를 전송하고 라우터에서 MAC주소를MAC 주소를 확인하고 다음 라우터의 MAC 주소를 입력하여
전송하는 방식으로 데이터를 전송한다.
동일 네트워크 상의 장치
· 네트워크 계층 주소 또는 IP주소는 보내는 주소와 받는 주소를 나타내는데 IP 주소의 왼쪽 부분은 네트워크의
어떤 멤버의 IP주소인지 나타낸다.
※ 포워딩 : 라우터나 그 외 포트를 사용하는 단말기에 포트를 변경할 때 IP를 재설정해줘야 한다.
즉 라우터 g0/0 포트에 꼽힌 스위치와 연결된 IP를 g0/1에 꼽을 때 IP를 새롭게 재설정 해준다는 뜻이다.
'CCNA > 이론' 카테고리의 다른 글
[CCAN] 물리 계층 (2) | 2022.02.20 |
---|---|
[CCNA] Router (0) | 2022.02.18 |
[CCNA] Network (3) | 2022.02.17 |