%EC%9D%B4%2015%ED%99%89%EC%9D%98%20%ED%99%89%20%EC%88%98%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
나는 거리 벡터 프로토콜 RIP 중 하나를 읽고 있는데 그것이 사용하는 최대 홉 수가 15홉이라는 것을 알게 되었지만 왜 15가 최대 홉 수로 사용되는지 의심스럽습니다. 왜 다른 숫자는 10,12가 아니거나 8이 될 수 있습니까?
답변1
이는 RIP가 만들어졌을 때 디자인 결정이었습니다. https://www.rfc-editor.org/rfc/rfc1058:
도달할 수 없는 대상을 나타내기 위해 특정 메트릭 값이 선택됩니다
. 해당 측정항목 값은
우리가 볼 것으로 예상하는 가장 큰 유효한 측정항목보다 큽니다 . 기존 RIP 구현에서는 16이 사용됩니다. 이 값은
유효한 가장 큰 측정항목보다 크기 때문에 일반적으로 "무한대"라고 합니다.
나중에 왜 16이었는지 설명합니다.
이제 "무한대"가 가능한 한 작게 선택된 이유를 알 수 있습니다
. 네트워크에 완전히 액세스할 수 없게 되면
무한대로 계산하는 것이 가능한 한 빨리 중단되기를 원합니다. 무한대
는 실제 경로가 그렇게 크지 않을 만큼 충분히 커야 합니다. 그러나
필요한 것보다 더 크면 안 됩니다. 따라서 무한대를 선택하는 것은 무한대로 계산되는
경우 네트워크 크기와 수렴 속도 간의 균형입니다 . RIP 설계자들은 이 프로토콜이 직경이 15보다 큰
네트워크에서는 실용적이지 않을 것이라고 믿었습니다 .
최대값 15는 메트릭을 보유하는 필드의 크기와 관련이 없습니다. 실제로 크기는 4바이트입니다(최대값: 2^32-1).:https://www.rfc-editor.org/rfc/rfc1723
TL;DR: 당시에는 16이 무한대를 의미하기에 충분히 큰 것으로 생각되었으며, 이는 15가 가능한 가장 큰 네트워크 직경(홉 수)을 만드는 것입니다.
답변2
컴퓨팅에서는 숫자를 저장하는 데 이진 형식이 사용되기 때문입니다. 이 경우 네 위치의 최대 이진수는 15(1111)입니다. 그래서 그들은 홉 수를 계산하기 위해 네 자리를 예약했습니다. RIP를 개발할 당시에는 충분했던 것 같습니다.
바이너리 시스템 작동 방식에 대한 추가 정보: