컴퓨터 사이언스/네트워크14 네트워크 계층 - 라우팅 알고리즘 라우팅 알고리즘 라우터는 forwarding table을 룩업해서 패킷의 IP주소와 매칭 되는 다음 router를 찾아 전달한다. (longest prefix matching) 이때, forwarding table은 특정 알고리즘에 따라 구성되는데 이 알고리즘을 라우팅 알고리즘이라고 한다. 라우팅 알고리즘은 네트워크를 그래프로 추상화하고 시작지점과 목적지까지의 최소 비용을 구하는 알고리즘이다. 라우팅 알고리즘은 크게 두 개로 구분되는데 모든 그래프 정보를 아는 상태로 계산하는 방법(global)과 인접한 노드의 정보만으로 계산하는 방법(decentralized)이 있다. AS AS(astonomous systems)는 routing 알고리즘을 공유하는 router 집합을 의미한다. 네트워크는 AS간 연결.. 2023. 3. 12. 네트워크 계층- IP 애플리케이션 계층과 전송 계층은 end to end 전송에 입각하고 있다면 네트워크 계층은 end에서 다른 end까지 전달되는 과정을 관장한다. 다른말로 에플리케이션 계층과 전송 계층은 네트워크 엣지 부분에서 동작한다면 네트워크 계층은 네트워크 코어에서 동작한다. 네트워크 코어는 수많은 라우터들의 집합으로 이루어져있다. 라우터는 네트워크 엣지에서 전송한 데이터를 다른 네트워크 엣지로 전달하기 위해 routing과 forwarding을 수행한다. 라우터의 역할 routing: IP 주소와 다음 라우팅 경로를 맵핑하는 forwarding 테이블을 만드는 것 forwarding: routing 알고리즘에 의해 생성된 forwarding 테이블을 참조하여 데이터를 다름 라우터로 전달하는 것 forwarding .. 2023. 3. 9. 전송계층 - TCP TCP 통신 특징 Point to Point socket 한쌍의 통신만을 수행한다. reliable, in-order byte stream 유실없이 순서대로 전달된다. pipelined 한번에 여러개의 패킷을 연속적으로 전달한다. send & receiver buffer reliable 한 데이터 전송을 위해 send와 receiver는 buffer에 데이터를 일시적으로 저장한다. full duplex data 데이터가 양방향으로 움직인다. connection oriented 커넥션 기반으로 데이터를 전송하기 위해 handshake 과정을 거친다. flow controlled receiver buffer에 남는 공간 만큼 sender 가 보내는 데이터 양을 조절한다. congestion controlle.. 2023. 3. 7. 전송 계층 전송 계층에 위치한 대표 프로토콜 TCP/UDP는 공통적으로 크게 두가지 역할을 수행한다. multiplexing/demultiplexing error checking 전송 계층의 역할 multiplexing / demultiplexing multiplexing 여러 소켓으로 부터 데이터를 모아 헤더를 구성해 다음 계층으로 전달하는 역할 헤더에는 목적지 IP 주소와 목적지 포트가 포함된다. demultiplexing 헤더 정보를 바탕으로 올바른 socket에 데이터를 전달하는 역할 TCP 통신은 송신 IP, 송신 포트, 수신 IP, 수신 포트 정보를 모두 고려하여 해당하는 socket에 데이터를 전달한다. 반면에 UDP 통신은 수신 IP, 수신 포트만 활용해 해당 socket에 데이터를 전달한다. UDP.. 2023. 2. 19. 이전 1 2 3 4 다음