먼저 라우터가 주소 지정을 수행하는 방법에 대한 질문을 생각해 보세요. 두 가지 방법이 있는데, 하나는 가오더 지도와 마찬가지로 출발지와 도착지를 입력하면 출발지에서 도착지까지 여러 개의 완전한 경로가 나옵니다. 다른 유형은 도로 표지판과 유사하며 전체 경로를 표시하지는 않지만 여러 교차로에서 다음 목적지가 어디에 있는지 알려줍니다.
첫 번째 방법이 실제 상황에 맞지 않기 때문에 라우터는 두 번째 방법을 채택합니다. 네트워크는 너무 복잡하고 거대하며, 라우터가 모든 네트워크의 토폴로지를 아는 것은 불가능합니다. 실제로 모든 네트워크의 경로를 저장한다고 해도 매우 비효율적이며 막대한 저장 공간이 필요합니다. 또한 경로를 쿼리하는 것도 매우 비효율적입니다.
그래서 라우터는 연결된 네트워크의 정보만 저장합니다. 이런 방식으로 데이터 패킷이 라우터를 통과하면 라우터는 대상 주소를 기반으로 다음 홉 주소를 선택하여 데이터 패킷을 전달합니다. 중간에 10개 이상의 패킷이 있을 수 있습니다. 라우터에 의해 전달된 후 최종적으로 데이터 패킷이 대상 호스트에 전달됩니다.
라우터에는 패킷 전달을 위한 자체 알고리즘이 있습니다. 라우터가 패킷을 전달하는 방법을 살펴보겠습니다.
(1) 먼저 데이터 패킷에서 대상 주소를 추출해야 합니다.
(2) 직접 배송이 가능한지 확인해보세요. 즉, 목적지 주소가 위치한 네트워크가 라우터에 직접 연결되어 있는지 여부입니다. 연결되어 있으면 다른 라우터를 거치지 않고 바로 전달할 수 있습니다. 그렇지 않으면 3을 실행합니다.
(3) 라우팅 테이블에 해당하는 특정 호스트 경로가 있는지 확인합니다. 그렇다면 특정 호스트 경로에 지정된 다음 홉 주소로 전달합니다.
(4) 규칙과 일치하는 일반 경로가 있는지 확인하고, 규칙과 일치하는 일반 경로가 지정한 다음 홉 주소를 기준으로 전달합니다.
(5) 라우터의 라우팅 테이블에 기본 경로가 설정되어 있으면 기본 경로에 지정된 주소로 패킷을 전달하고, 그렇지 않으면 6
(6)을 실행하여 패킷을 삭제하고 전달 실패를 보고합니다
권장 사항 : "리눅스 비디오 튜토리얼"
위 내용은 라우터가 패킷을 전달하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!