1. 전송과 교환의 개념을 설명하시오
- 교환(Switching)은 전달 경로가 둘 이상일 때 라우터에서 데이터를 어느 방향으로 전달할지를 선택하는 기능이다. 올바른 경로를 선택하기 위해 교환 기능을 수행하는 호스트는 경로 선택과 관련된 정보를 관리한다.
- 전송(Transmission)은 특정한 물리 매체에 의하여 일대일로 직접 연결된 두 시스템 간의 신뢰성 있는 데이터 전송을 보장하기 위한 것. 즉, 전송에는 라우팅 개념이 포함되지 않는다. 즉, 두 호스트를 전송 매체로 직접 연결해 송신 호스트가 전송한 데이터가 수신 호스트에 직접 도착하도록 해야 한다.
2. 점대점 방식과 브로드캐스팅 방식을 차이점 위주로 비교하여 설명하시오.
- 점대점(Point-to-Point) 방식에서는 호스트 간의 데이터 전달 과정에서 송신 호스트가 중개 호스트와 일대일로 연결되므로 다른 호스트에는 데이터가 전달되지 않는다. 이때 각 호스트는 데이터를 송수신하는 호스트일 수도 있고, 중간에 있는 교환 호스트일 수도 있다. 원거리에 있는 시스템 사이의 통신 방식으로, WAN 환경에서 주로 사용한다.
- 브로드캐스팅 방식에서는 공유 전송 매체 하나에 여러 호스트를 연결하기 때문에 네트워크에 연결된 모든 호스트에 데이터가 전송된다. 따라서, 데이터 전달 과정에는 별도의 교환 기능이 필요없다. 대신, 자신을 목적지로 하지 않은 데이터를 수신 호스트가 버리고, 목적지 호스트만 데이터를 수신하도록 설계해야 한다. LAN처럼 지리적으로 가까운 호스트 사이의 통신에서 주로 사용한다.
3. 멀티포인트 유니캐스팅 방식과 멀티캐스팅 방식을 비교하여 설명하시오.
- 멀티포인트 유니캐스팅은 일대일 통신을 지원하는 유니캐스팅 방식을 이용해 일대다 통신을 하는 방식이다. 송신 호스트가 여러 개의 수신 호스트와 개별적으로 연결 설정이 되어야 한다. 데이터 전성 과정에서도 개별 수신 호스트에 별도로 각각 전송하므로 데이터를 여러 번 전송한다. 응답 기능 및 재전송 기능 등을 구현하기 좋지만 수신 호스트가 많아지면 성능 면에서 문제가 나타날 수 있다.
- 멀티캐스팅은 프로토콜 자체에서 일대다 전송 기능을 구현하여 통신 환경을 설정 요구 한 번으로 지원할 수 있다. 멀티캐스팅에서는 송신 호스트의 전송 요구 한 번으로 모든 수신 호스트에 데이터를 전달할 수 있다. 비디오, 오디오, 화상통화 등의 서비스와 같이 등록된 다수 고객을 대상으로 하는 데이터 서비스에 쓰인다. 따라서, 멀티캐스팅을 구현하려면 멀티캐스트 그룹을 생성하고 관리하는 기능이 필요하다.
4. 데이터 링크 계층에서 전송 오류 문제를 해결하기 위해 필요한 응답 프레임, 타임아웃, 순서 번호 등의 기능을 설명하시오.
- 데이터 링크 계층의 프레임 전송 오류에는 데이터가 깨져서 도착하는 프레임 변형과 데이터가 목적지에 도착하지 못하는 프레임 분실이 있다. 이 오류를 감지하면 복구하는 과정이 진행되는데, 일반적으로 데이터를 재전송하는 기법을 사용한다.
- 응답 프레임 : 송신 호스트가 전송한 데이터 프레임의 일부가 깨지는 프레임 변형 오류를 확인한 수신 호스트는 송신 호스트에 응답 프레임을 전송해 원래의 데이터 프레임을 재전송하도록 요구할 수 있다. 이 때 정상이면 긍정 응답 프레임(Positive Acknowledgement), 비정상이면 **부정 응답 프레임(Negative Acknowledgement)**으로 응답하여 송신 호스트에게 재전송을 요청할 수 있다.
- 타임 아웃 : 송신 호스트가 보낸 프레임이 도착하지 못하면 프레임 분실 오류이다. 이 때 수신 호스트는 어떤 응답도 하지 않으므로 송신 호스트는 데이터 프레임 전송 후 일정 시간 이내 응답 프레임이 오지 않으면 타임아웃 기능을 동작하여 데이터 프레임을 재전송한다.
- 순서 번호 : 타임아웃 등으로 송신 호스트가 같은 데이터 프레임을 중복으로 보내는 경우에 수신 호스트가 중복 데이터 프레임을 가려내려면 각 프레임 내부에 **순서 번호(Sequence Number)**를 기록해야 한다.
*흐름 제어(Flow Control) : 송신 호스트가 수신 호스트가 감당할 수 있을 정도의 전송 속도를 유지하면서 데이터 프레임을 전송하기 위한 기능. 수신 호스트가 송신 호스트에 다음 전송 시점을 통지하는 방식. 대표 프로토콜로는 슬라이딩 윈도우 프로토콜이 있다.
5. 데이터 프레임이 전송되었을 때 발생 가능한 오류의 종류와 이를 해결하기 위한 방안을 설명하시오.
4번에서 같이 설명
6. 데이터 프레임의 정보 중에서 순서 번호가 제공되지 않았을 때 문제점을 순서 번호가 있는 경우와 비교해서 설명하시오.
4번에서 같이 설명
7. 문자 프레임에서 문자 스터핑의 필요성과 원리를 설명하시오.
- 데이터 링크 계층에서는 전송 데이터를 프레임이라는 작은 단위로 나누어 처리한다. 상위 계층에서 보낸 전송 데이터의 오류를 확인하기 위한 체크섬(Checksum), 송수신 호스트의 주소, 기타 제어 코드 같은 정보가 포함된다.
- 문자 프레임(Character Frame)은 프레임 내용이 문자로 구성되므로 문자 데이터를 전송할 때 사용한다. 문자 프레임 방식은 8비트 단위(또는 ASCII 문자 코드)의 고정 크기로 동작한다.
- 각 프레임의 시작 위치에 DLE·STX 문자를 추가하는 끝나느 위치에 DLE·STX를 추가해 프레임의 다른 정보와 구분할 수 있도록 한다.
- 문자 프레임 내부에 DLE 문자가 포함되면 수신 호스트에서 혼란이 발생할 수 있다. 이 때 전송 데이터가 DLE를 포함하면 DLE 문자 하나를 강제로 추가하여 수신 호스트가 연속된 DLE를 발견하면 임의 추가된 문자로 판단할 수 있도록 한다. 이를 문자 스터핑(Character Stuffing)이라고 한다. 즉, 문자 프레임의 전송 과정에서 제어 문자를 추가하는 기능을 문자 스터핑이라고 한다.
8. 비트 프레임에서 비트 스터핑의 필요성과 원리를 설명하시오.
- 비트 프레임은 문자 단위가 아닌 임의의 비트 패턴 데이터를 전송하는 방식이다. 프레임의 시작과 끝 위치에 Flag라는 특수 비트 패턴(01111110)을 사용해 프레임 단위를 구분한다.
- 비트 프레임 방식에서는 비트 데이터 중에 1인 패턴이 연속해서 5번 발생하면 강제로 0을 추가하는 조작을 한다. 이러면 1이 연속으로 6번 나오는 패턴을 발견하는 경우 이를 플래그라고 판단할 수가 있게 된다. 이렇게 0을 추가하여 수신 호스트가 특수 비트 패턴을 판단하도록 유도하는 기법을 비트 스터핑이라고 한다.
9. 패리티 비트의 목적과 사용 방법을 설명하시오.
- 패리티 비트는 8비트 구조에서 7비트의 ASCII 코드를 제외한 나머지 1비트를 말한다. 이는 전송 과정에서 1비트의 오류가 발생하는 것을 검출하기 위한 것으로 패리티 비트를 포함에 1의 개수가 짝수(Even Parity)가 되거나 홀수(Odd Parity) 개가 되도록 한다.
10. 다항 코드 1001011을 사용하는 프로토콜에서 데이터 101101001을 전송할 때의 체크섬 값을 구하고, 송수신 호스트가 오류 제어 기능을 수행하는 방법을 설명하시오.
- CRC(Cyclic Redundancy Code)라고도 알려진 다항 코드(Polynomial Code)방식은 현재 통신 프로토콜에서 가장 많이 사용되는 오류 검출 기법이다.
- 데이터를 다항코드로 나누어 체크섬을 계산한다. 이 때는 모듈러-2 방식으로 한다. 덧셈의 자리 올림이나 밸셈의 자리 빌림 과정없이 배타적 논리합(Exclusive OR) 연산과 동일한 결과를 얻는다.
- 데이터 뒤에 다항코드의 다항식 최대 차수 + 1 만큼을 0으로 채우고 다항코드로 나누어 나머지를 얻는다. 여기서는 6개의 0을 추가해 101101001000000을 1001011로 나누는 것.
- 계산된 체크섬은 101001 이며, 송신할 최종 데이터는 1001011101001 가 된다.
'Computer Science > Network' 카테고리의 다른 글
| 데이터 통신과 컴퓨터 네트워크 - 3장 네트워크 기술 (4) | 2025.06.29 |
|---|---|
| 데이터 통신과 컴퓨터 네트워크 - 2장 네트워크 모델 (2) | 2025.06.19 |
| 데이터통신과 컴퓨터 네트워크 - 1장 네트워크 관련 기초 용어 (0) | 2025.06.17 |
| 네트워크 기초 6. TCP/IP Stack 기준 설명 (2) | 2024.12.16 |
| 네트워크 기초 5. 실제 구현에서의 소켓 (1) | 2024.12.10 |









