네트워크 흐름 제어와 혼잡에 어 차이점과 알고리즘에 대해 찾고 있으신가요?
이 글을 통해 간단하게 네트워크 흐름 제어와 혼잡에 어 차이점과 알고리즘에 대해 알게 될 것입니다.
그럼 네트워크 흐름 제어와 혼잡에 어 차이점과 알고리즘 차이 유압 제어 와 혼잡제어에 대해 빠르게 알아보겠습니다.
글의 순서
함께 참고하면 좋은 글 추천
네트워크 흐름 제어와 혼잡에 어 차이점과 알고리즘
CP 통신이란?
네트워크 네트워크의 신뢰 연결 방식 TCP는 기본적으로 신뢰할 수 없는 네트워크에서, 신뢰할 수 있는 네트워크를 가리킬 수 있도록 하는 경우 TCP는 네트워크 혼잡 회피 알고리즘을 사용합니다.
신뢰할 수 있는 네트워크를 가지고 있다는 것은 4가지 문제가 있다는 것입니다.
- 버릴 것 : 패킷이 버릴 수 있는 문제
- 정렬 바뀜 : 패킷의 순서가 작동하는 문제
- Congestion : 네트워크가 접속하는 문제
- Overload : 수신기가 과부하되는 문제
순서제어/혼잡제어란?
조작제어 (endsystem 대 endsystem)
측정 측과 수신 측의 데이터 처리 속도 차이를 해결하기 위해 노력합니다.
Flow Control은 수신자가 패킷을 더 이상 받지 않도록 하는 것입니다.
기본 개념은 수신자가 송신자에게 현재 자신의 상태를 피드백하는 것입니다.
관리 제어
측면의 데이터 전달과 네트워크의 데이터 처리 속도 차이를 해결하기 위해 규정합니다.
전송의전체과정
- 애플리케이션 계층 : 송신자 애플리케이션 계층이 소켓에 데이터를 사용.
- 전송 계층: 데이터를 세그먼트에 감싼다. 그리고 네트워크 계층에 당연히 이동함.
감지되는 느낌단에서 어찜든 수신 노드로 전송이 시도됩니다. 이 때, 송신자의 송신 버퍼에 데이터를 저장하고, 수신자는 수신 버퍼에 데이터를 저장합니다.
신청에서 준비가 되기 때문에 이 버퍼에 있는 것을 읽기 시작함.
따라서 흐름 제어의 핵심은 이 수신기 버퍼가 대용량을 처리하는 것입니다.
따라서 수신기는 RWND(Receive WiNDow) : 수신 버퍼의 공간을 보호함
1. 유압제어(Flow Control)
- 수신측이 처리측보다 측정 처리 속도가 빠른 면이 없지만, 측의 속도가 빠빠를 문제가 되는 문제가 있습니다.
- 수신측에서 허용되는 용량을 초과한 이후에 방문하는 데이터는 손실될 수 있으며, 손실이 적고 응답과 데이터 전송이 송/수신 측면에서 자주 발생합니다.
- 이러한 위험을 외부 측의 데이터 전송량을 수신자에 따라 조정해야 합니다.
삭제방법
Stop and Wait : 예외적으로 송신하는 것에 대해 확인 응답을 받아야만 그 다음에는 송신하는 방법
슬라이딩 윈도우 (뒤로 가기 N ARQ)
수신 측에서 설정한 크기 만큼의 측에서 확인 응답 없이 부분을 시작할 수 있게 되어 데이터를 간단하게 조정하는 보조법
목적: 전송되었음에도 불구하고, 승인을 받지 못한 바이트의 숫자를 파악하기 위해 사용하는 프로토콜LastByteSent – LastByteAcked <= ReceivecWindowAdvertised(마지막에 보내는 공간 – 마지막에 남는 공간 <= 남은 공간) ==(현재 공중에 떠있을 수 <= 슬라이딩 창)
기능 방식 : 먼저 작동하는 것에 포함되는 모든 구원을 전송하고, 그 구원의 전달이 확인되는 대로 이능력을 옆으로 김 움직이면서 그 멀리 떨어진 것들을 전송하는 방식
Window : TCP/IP를 사용하는 모든 호스트는 수신자와 2개의 Window를 가지고 있습니다. 호스트는 실제 데이터를 비교하기 전에 ‘3 way handshaking’을 통해 수신자 호스트의 수신 창 크기에 자신의 전송 창 크기를 맞추게 됩니다.
세부구조
위치 버퍼 – 200 이전의 바이트는 이미 전송되었고, 응답을 받지 않은 상태 – 200 ~ 202 바이트는 전송되었지만 응답을 받지 못한 상태 – 203 ~ 211 바이트는 아직 전송되지 않은 상태입니다.
수신 창
윈도우 – 수신하기 보다 작거나 같은 크기로 조종하게끔 제어할 수 있습니다.
윈도우 이동 – 이전 : 203~204를 전송 수신측 확인에서 응답 203~209가 송신 가능한 상태로 응답합니다.
선택된 반복
2. 혼잡제어(Congestion Control)
측정 항목의 데이터는 지역 망이나 인터넷으로 연결된 대형 네트워크를 통해 전달됩니다.
만약 라우터에 데이터가 몰릴 경우, 자신에게 온 데이터를 모두 처리할 수는 없습니다.
이런 호스트들은 또 다시 재전송을하게 되고 결국에는 가중으로 인해 이상한 플로우나 데이터 손신을 발생시키게 됩니다.
연결된 네트워크의 관리를 위해 우해적으로 측에서 보내는 데이터의 전송 속도를 강제로 줄이게 되며, 작업을 관리하는 데 사용됩니다.
또한, 네트워크에 남아 있을 수 있는 초과분을 방지하고 제거하는 기능을 제어할 수 있습니다 .
소수 제어가 측과 수신측 사이의 전송 속도를 조절하는 데 반해, 추출 제어는 호스트와 라우터를 포함하는 좀 더 작은 크기에서 전송 문제를 계속하게 됩니다.
해결 방법
AIMD(가산 증가/승수 감소)
처음에 신기를 신고하는 것이 문제 없이 도착하면 창 크기(단위 시간 내에 배치할 수 있음)를 1씩 증가시켜 주며 전송하는 방법
장거리 전송에 실패하거나 일정 시간을 버틸 경우에는 보내는 속도를 헬리콥터로 줄인다.
공평한 방식으로, 다수의 호스트가 한 네트워크를 공유하고 있으면 나중에 남는 쪽이 처음이지만, 시간이 있으면 상태로 수렴하게 특징이 있습니다.
문제점은 끊임없는 네트워크의 높은 징후를 사용하지 못하여 인지 시간이 걸리게 하고, 네트워크가 관계를 맺는 상황을 미리 인지하지 못하는지에 관한 것입니다. 즉, 네트워크가 점점 사라져야 하는 업무를 줄이는 방식이다.
Slow Start (느린 시작)
AIMD 방식이 네트워크의 확장 가능한 외부에서는 작동하지만, 처음에는 전송 속도를 높이는데 시간이 오래 걸리는 한계가 존재합니다.
Slow Start 방식은 AIMD와 동등을 독립적으로 시작하고, 끝이 문제 없이 도착하면 각자의 ACK마다 창 크기를 1씩 가지고 있습니다. 즉, 한 번의 청소로 창문 크기가 2배로 됩니다.
전송 속도는 AIMD에 반해 지수가 꼴로 증가합니다. 대신에 현상이 발생하면 창 크기를 1로 버리게 됩니다.
처음에는 네트워크의 수용량을 예상할 수 있는 정보가 있지만, 일시적인 상황이 발생하고 있어도 네트워크의 용량을 어느 정도 예상할 수 있습니다.
그러므로 불편함이 있는 부분은 창 크기의 예외처럼 크고 꼴로 창을 크게 하여 그 이후에는 완만하게 1씩 증가합니다.
빠른 재전송 (빠른 재전송)
빠른 재전송은 TCP의 조정에 추가되었습니다.
구원받은 쪽에서 먼저 도착해야 할 것이 도착하지 않고 유일할 경우에도 ACK를 보내게 됩니다.
나중에 잘 쓸 수 있는 마지막 부분의 뒷부분의 순번을 ACK 유일에 실어서 보내게 되어, 베이스에 하나가 뺄 수 있게 측에서는 순번이 분리된 ACK를 다룰 수 있습니다.
이것을 감지하는 순간 문제가 발생하면 순번을 재전송할 수 있습니다.
이해하기 쉬운 순번을 제외하고 3개 정도 재전송하게 됩니다. 정당한 상황이 배제되어야 한다는 느낌을 받고 창 크기를 줄이게 됩니다.
빠른 회복(Fast Recovery)
희귀한 상태가 되는 창 크기를 1로 줄이지 않고 반으로 쪼개는 것을 줄이는 방법이다. 이 제한까지 적용하면 상황을 한 번에 보이지 않고 AIMD 방식으로 동작하게 됩니다.
지금까지 1초 만에 알아보는 네트워크 흐름 제어와 혼잡에 어 차이점과 알고리즘에 대해 알아봤습니다. 많은 도움 되셨으면 좋겠습니다.
이 글이 마음에 들었다면 즐겨찾기 추가후 팔로워 해주시면 감사하겠습니다.
카카오 뷰 : SIK_FLEX 카카오 뷰 바로가기
트 위 터 : SIK_FLEX 트위터 바로가기
네이버 블로그 : SIK_FLEX 네이버 블로그 바로가기
일상속 사소한 가이드 SIK_FLEX
필요한 정보가 없나요? 문의사항에 남겨주시면 추후 업데이트하는데 많은 도움이 됩니다.
SIK_FLEX는 여러분들과 함께 만들어가는 공간입니다.
“이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.”