- rdt 3.0(stop-and-wait)
- go-back-N
- selective repeat
- UDP socket을 이용하여 sender와 receiver side rdt 구현
- 목적지 호스트의 IP 주소로 loopback 주소인 127.0.0.1 사용
- 가정
- 하나의 sender와 하나의 receiver
- sender는 항상 전송할 데이터가 있음
- sequence number는 0부터 1씩 순차적으로 증가
- segment size와 transmission rate은 고려하지 않음
- 프로토콜 설정
- Go-back-N sending window size = 50
- Selective Repeat sending window size = 50, receiving window size = 50
- 전송 오류(pe) = 1/1000
- transmission delay와 propagation delay를 포함한 RTT (r) = 10ms
각 파일 안에는 sender와 receiver 코드가 따로 구분되어 있는데, python console에서 receiver 코드를 실행해주어 socket을 열어준 후 sender 코드를 실행해준다.
아래는 python console에서 각 파일을 실행했을 때 sender 사이드에서 출력되는 화면이다.