쓰기 속도가 500Mb / s (62.5MB / s) 인 하드 드라이브에 800Mb / s (100MB / s)의 속도로 파일을 다운로드하려고하면 어떻게됩니까? 시스템이 다운로드 속도를 제한합니까?
쓰기 속도가 500Mb / s (62.5MB / s) 인 하드 드라이브에 800Mb / s (100MB / s)의 속도로 파일을 다운로드하려고하면 어떻게됩니까? 시스템이 다운로드 속도를 제한합니까?
답변:
인터넷에서 가장 널리 사용되는 TCP를 포함한 많은 프로토콜은 흐름 제어라는 것을 사용합니다. 흐름 제어는 TCP가 송신자가 버퍼를 비울 수있는 것보다 빠르게 패킷을 전송하여 수신자가 압도하지 않도록 보장한다는 것을 의미합니다. 아이디어는 데이터를 수신하는 노드가 현재 상태에 대해 알리기 위해 데이터를 보내는 노드에 일종의 피드백을 전송한다는 것입니다. 따라서 양방향 피드백을 통해 두 시스템 모두 최적의 리소스를 사용하고 하드웨어 불일치로 인한 문제를 예방할 수 있습니다.
무슨 일이 일어날 지?
그것의 [TCP] 책임은 오류 제어, 세분화, 흐름 제어, 혼잡 제어 및 기본 네트워크와 독립적 인 엔드 투 엔드 메시지 전송을 포함합니다.
시스템이 다운로드 속도를 제한합니까?
말 그대로는 아닙니다. 수십 년 전에 컴퓨터는 실제로 동기 속도 (예 : 고정 속도 설정의 모뎀)와 통신했습니다. 이것은 상대적으로 낮은 수준에서 오늘날에도 일어나고 있습니다. 즉, DSL 또는 케이블 모뎀은 직접 물리적 업 링크 구성 요소와 통신하는 속도를 설정합니다. 그러나 2017 년에는이 모든 것이 충분히 복잡하여 거의 모든 구성 요소가 매우 역동적입니다. 예전에는 모뎀이 물리적으로 특정 속도 만 말할 수 있었으며 전화를 걸기 전에 설정해야했습니다. ATM과 같은 일부 네트워크 프로토콜은 동기식 광역 네트워크를 얻으려고했습니다. 그러나 TCP / IP와 비교할 때 그렇게 나쁘지 않았습니다.
오늘날 효과적인 속도는 일반적으로 버퍼링, 흐름 제어 등을 통해 항상 암시 적으로 도달합니다.
또한 귀하의 예에는 더 많은 참가자가있을 수도 있습니다. 네트워크 인터페이스가 더 많은 작업을 수행 할 수 있습니다 (PC에 대한 다른 연결). 도중에 네트워크의 일부가 바쁠 수 있습니다 (가족이 서핑을하거나 비디오를 시청). HDD가 동시에 3 개의 큰 파일 쓰기를 수행하고있을 수 있습니다. 따라서 제한 될 수있는 "속도"를 구체적으로 설정하는 것은 의미가 없습니다.
파일 다운로드 (일반적으로)는 TCP라는 프로토콜을 통해 발생합니다. TCP에서 보낸 사람은받는 사람이 데이터를받을 준비가 될 때까지 데이터를 보내지 않습니다.
컴퓨터가 수신 된 데이터를 하드 드라이브에 쓰기 전에 버퍼에 저장하기 위해 약간의 RAM을 예약합니다. 그런 다음 보낸 사람에게 버퍼를 채우기에 충분한 데이터를 요청합니다. 데이터를 수신하면 버퍼에서 하드 드라이브로 데이터 쓰기가 시작되지만 버퍼가 거의 가득 찼을 때 더 많은 데이터를 요구하지 않습니다.
전체적인 효과는 발신자가 수신자가 전송을 계속하기 전에 따라 잡기를 기다릴뿐입니다.