{Lecture}/Computer Network6 컴퓨터 네트워크 과제 echo software router 구현 echo software router 구현 클라이언트는 0~4의 범위를 가지는 난수가 들어가는 응용 계층 헤더 필드 key를 패킷에 담아 라우터에게 보낸다. 이 때, 터미널에 해당 key 값을 출력해준다. 라우터는 해당 헤더 필드 값을 읽고, 자신의 포워딩 테이블을 참고하여, 해당하는 output port 번호를 port 필드에 넣은 뒤, 클라이언트에 되돌려준다. - 서버에 구현해야하는 포워딩 테이블은 아래의 형태를 가지고 있다. keyport0413223140 클라이언트는 패킷을 수신하면 port 필드 값을 출력해준다. 클라이언트는 총 5개의 패킷을 연달아서 보낸다. 즉, 답장도 5개가 돌아오고, 출력되는 port 값도 5개가 된다. key값을 난수로 생성하므로 그 때마다 key와 port 값은 .. 2024. 6. 5. 컴퓨터 네트워크 과제 rdt2.2 over UDP 구현 과제 rdt2.2 over UDP 구현 전송계층 프로토콜은 UDP를 사용하되 응용 프로그램 상에서 rdt2.2 프로토콜을 구현 client.c는 총 3개의 패킷을 보내며 각각 다음의 상황을 재현 1. 정상적인 패킷2. [Our-of-Order] 순서가 뒤바뀐 패킷 (임의로 순서를 바꿔서 패킷을 보낸다.)3. [Bit error] 비트에러가 발생한 패킷 (임의로 데이터를 변조하여 비트에러를 발생시켜서 패킷을 보낸다.) rdt2.2를 기반으로 작동하는 서버 프로그램은 이 세가지 상황 모두에 대해 잘 대처할 수 있어야 합니다. Out of-order와 bit error의 경우는 ack을 통해 재전송을 요청하고, client를 이를 통해 패킷을 재전송 ⚫ 이 때 반드시 탐지한 오류가 무엇인지, seq 번호는 .. 2024. 6. 5. 컴퓨터 네트워크 과제 UDP Echo server 구현 클라이언트가 보낸 메시지를 그대로 수신해주는 에코 프로그램을 구현 클라이언트가 Hello world!, This is me! 등의 문자열을 입력하면, 이를 서버가 수신하여 화면에 출력한 후, 다시 이를 그대로 클라이언트로 회신하여 클라이언트가 이를 다시 화면에 출력해주는 프로그램을 구현한다 구현코드 client.c #include #include #include #include #include #include int readline ( int fd, char *ptr, int maxlen ){ int n, rc; char c; for(n=1; n 0 ){ /* Put sendto() here */ sendto(sock, &SendBuffer, sizeof(SendBuf.. 2024. 6. 5. [NetWork] 네트워크 정리 (3) 트렌스포트 레이어 정리 전송 계층 서비스 뒤에 있는 원리를 이해하기.• 다중화, 역다중화 ( multiplexing, demultiplexing)• 신뢰성 있는 데이터 전송 • 흐름 제어 • 혼잡 제어인터넷 전송 계층 프로토콜에 대해 배운다.• UDP: 연결 없는 전송 • TCP: 연결 지향 신뢰성 있는 전송 • TCP 혼잡 제어 Transport services and protocols서로 다른 호스트에서 실행되는 어플리케이션 프로세스 간의 논리적인 통신을 제공한다. 전송 프로토콜은 끝 시스템에서 다음과 같은 작업을 수행한다:• 송신자: 어플리케이션 프로그램에서 메시지를 보내면 이 메세지를 세그먼트로 나누고 가 다음 네트워크 계층에 전달한다. • 수신자: 세그먼트를 메시지로 재조립하고 어플리케이션.. 2023. 10. 28. [NetWork] 네트워크 정리(2) 어플리케이션 레이어 정리 Bandwidth, Throughput 대역폭(Bandwidth): 대역폭은 네트워크 링크나 통신 채널이 전달할 수 있는 최대 데이터 전송 속도 또는 전송 가능한 데이터 양을 나타낸다. 대역폭은 보통 초당 비트수(bps)로 측정된다. 대역폭은 해당 링크의 물리적 특성에 따라 결정되며, 네트워크에서 정보를 전송하는 데 사용 가능한 최대 용량을 나타낸다. 예를 들어, 1 Gbps 대역폭의 이더넷 링크는 초당 1 기가비트의 데이터를 전송할 수 있다. 처리량(Throughput): 처리량은 실제로 전송된 데이터 양 또는 전송 속도로 정의된다. 즉, 대역폭과 다른 링크에서 발생하는 다양한 요인에 따라 실제로 전달된 데이터 양이다. 처리량은 네트워크의 현재 상태, 혼잡도, 패킷 손실 및.. 2023. 10. 28. [NetWork] 네트워크 정리 (1) 네트워크 1주차 정리 The Internet: a “nuts and bolts” view 수십개의 디바이스그 연결됨->인터넷 '엣지(Edge)'에서 네트워크 애플리케이션을 실행하는 시스템 host네트워크 상에 연결되어있는 디바이스를 말한다(end system이라고도 말함) packet네트워크에서 데이터를 패킷 형태로 전달한다 packet swithes패킷(데이터 조각)을 전송한다. 라우터, 스위치 Communication links데이터나 정보를 전송하는 경로 또는 링크 link는 호스트, 스위치 끼리 연결된 선을 말한다. 광섬유,구리 케이블,위성 등 bandwidth: 전송률 (대역폭이라고도 한다) Networks기관(조직)에 의해 관리되는 장치, 라우터, 연결(링크)의 집합 The Intern.. 2023. 10. 27. 이전 1 다음