2. 네트워크 개념(1)

2022. 10. 30. 06:34Web/Network

모듈화

- 모듈 : 독립적으로 동작하면서 상호 유기적으로 통합 가능해야 함.

- 시스템을 모듈화하지 않았다면 한 부분만 고장 나도 전체 시스템을 교체해야 함

 

 프로토콜 설계 시 고려사항

- 네트워크 호스트의 주소 표현 방법

- 데이터 전송 과정의 오류 제어

- 통신 양단 사이의 전송 속도를 제어하는 흐름 제어

 

오류제어

- 변형 : 자연계에서는 잡음을 피할 수 없으며, 이로 인해 데이터 변형 발생

해결 방안 : 오류 검출 또는 복구를 할 수 있는 추가 정보를 같이 보냄. 

정상적인 데이터 수신이 확인되면 긍정 응답(ACK)을 보냄.

긍정 응답을 받아야 다음 데이터 송신 진행.

변형이 확인되면 부정 응답(NAK)을 보내 재전송을 요구할 수 있음

- 분실 : 잡음이 아주 심하거나 매체에 오류가 있는 경우 데이터가 아예 도착하지 않을 수 있음

해결 방안 : 수신단에서 이를 확인할 방법은 없음.

송신단에서 데이터를 보낸 후 정해진 시간동안 긍정 응답이 오기를 기다림(타이머)

일정 시간 동안 응답이 안오면(타임 아웃) 분실로 판단하고 재전송

- 중복: 수신단에서 보낸 긍정 응답이 분실되거나, 타이머 설정 오류로 긍정 응답이 오기 전에 분실로 판단하여 재전송하는 경우 수신단은 같은 데이터를 수신하는 경우가 발생

해결 방안 : 송신단에서 데이터를 보낼 때 순서번호를 같이 보냄

수신단에서 이를 확인하여 이미 수신한 데이터의 경우 버림

 

흐름 제어

- 송수신 호스트의 데이터 처리 속도 차이에서 데이터 분실 발생

- 버퍼를 이용하여 완화가 가능하나, 버퍼 크기에 제한이 있음

- 수신 호스트의 버퍼 처리 속도보다 송신 호스트가 데이터를 전송하는 속도가 빠르면 논리적인 데이터 분실 오류가 발생

- 송신 호스트의 전송 속도 조절 필요

- 송신 호스트가 데이터를 전송하려면 반드시 수신 호스트로부터 명시적인 전송 허가를 받아야함

 

데이터 전달 방식

전이중

반이중

단방향

 

서비스의 종류

연결형 : 전달 경로를 설정하는 연결 설정 및 해제 과정 필요

비연결형 : 연결 설정 및 해제 과정 없이 바로 데이터 전송

 

서비스 프리미티브

 

 

* 쉽게 배우는 데이터 통신과 네트워크(3판) 책을 바탕으로 작성하였습니다.

https://product.kyobobook.co.kr/detail/S000061352064

'Web > Network' 카테고리의 다른 글

2. 네트워크 개념(3)  (1) 2022.10.30
2. 네트워크 개념(2)  (0) 2022.10.30
1. 네트워크 기초(3)  (0) 2022.10.30
1. 네트워크의 기초(2)  (0) 2022.10.30
1. 네트워크의 기초(1)  (0) 2022.10.30