슬라이딩 윈도우
네트워크 호스트 간 패킷 흐름 제어, 슬라이딩 윈도우
- 슬라이딩 윈도우(Sliding Window) 알고리즘의 개념
- 수신 측에서 설정한 윈도우 크기만큼 송신 측에서 확인 응답(ACK) 없이 전송할 수 있게 하여 흐름을 동적으로 조절하는 제어 알고리즘
- 윈도우에 포함되는 모든 패킷을 전송하고, 전송이 확인되는 대로 윈도우를 옆으로 옮겨(slide) 다음 패킷들을 전송하는 방식
- 슬라이딩 윈도우의 특징
흐름제어 기법 – Transport Layer 제공 흐름제어 기법
연속 전송 – 응답을 기다리지 않고 연속 패킷 전송
크기 동적변환 – 윈도우 크기가 상황에 맞게 동적으로 변화
- 슬라이딩 윈도우의 구성
윈도우 크기 – 전송했으나 확인 응답 받지 못한 데이터와 지연없이 전송 가능 데이터 합계
송신버퍼 크기 – 수신 측의 여유 버퍼 공간을 반영하여 동적으로 변경
슬라이딩 윈도우 프로토콜은 두 호스트 간 데이터 전송을 위한 일반적인 통신 프로토콜로 오류 제어와 흐름 제어를 함께 지원한다. 슬라이딩 윈도우 프로토콜은 다음의 기본 절차를 따른다.

∙송신 호스트는 정보 프레임(전송 데이터, 순서 번호, 오류 검출 코드)을 순서 번호에 따라 순차적으로 전송한다.
∙정보 프레임을 수신한 수신 호스트가 응답하는 순서 번호는 정상적으로 수신한 번호가 아닌, 다음에 수신하기를 기대하는 번호를 회신하는 것을 사용한다.
∙송신 호스트는 송신한 정보 프레임을 자신의 내부 버퍼인 송신 윈도우를 유지해야한다. 송신 호스트가 관리하는 송신 윈도우는 전송은 되었지만 긍정 응답이 회신되지 않은 프레임을 보관한다.
∙수신 호스트는 수신한 정보 프레임을 보관하기 위한 내부 버퍼인 수신 윈도우를 유지해야한다. 수신 호스트가 관리하는 수신 윈도우는 프로토콜의 동작 방식에 따라 크기가 달라진다. 동작 방식으로는 선택적 재전송과 고백 N 방식이 있다.
이제 슬라이딩 윈도우 프로토콜의 흐름 제어에 대해 알아보자.
슬라이딩 윈도우 알고리즘 설명

구분 |
설명 |
윈도우 열림동작 |
수신측 ACK 도착, 윈도우 우측 경계 오른쪽 이동 늘어난만큼 더 많은 데이터의 전송 가능 |
윈도우 닫힘동작 |
데이터 전송, 윈도우 좌측 경계 오른쪽 이동 전송측은 이 데이터에 대해 관여할 필요 없음 |
윈도우 크기결정 |
수신 측 윈도우와 혼잡 윈도우 크기 중 작은 값 ACK 포함 세그먼트를 사용하여 상대방에게 알림 혼잡상태가 발생 않도록 네트워크에서 결정 값 |
- 수신 프로세스의 처리 속도에 송신 윈도우 크기가 비례하며, 데이터 송수신에 대한 흐름 제어 수행
- 순서번호: 프레임 별로 부여되는 일련의 번호
수신 호스트와 송신 호스트가 정보 프레임을 구별하기 위해서 순서번호를 사용한다. 0부터 임의의 최댓값까지 순환 방식으로 사용한다. 일반적으로 순서 번호의 최댓값이 송신 윈도우 크기보다 커야 한다. 왜냐하면 순서번호를 지정할 때 최댓값 이후에는 다시 0번으로 순서번호를 지정하기 때문에 송신 윈도우의 크기가 더 클 경우 순서번호가 겹치는 현상이 발생할 수 있다. 정지-대기 방식의 프로토콜은 정보 프레임을 하나씩 보내는 방식이므로 송신 윈도우 크기를 1만 가지고 순서번호가 필요 없을 수 있다.
- 윈도우 크기: 긍정 응답 프레임을 받지 않고도 연속으로 전송할 수 있는 프레임의 개수
송신 윈도우에 보관된 프레임은 수신 호스트에 전송되었으나 아직 긍정 응답을 받지 못한 프레임이다. 윈도우에 포함되는 정보 프레임의 관리는 순서 번호를 기반으로 이루어지는데 낮은 순서 번호부터 처리된다.
- 정지-대기 프로토콜: 송신 윈도우 크기가 1인 경우
- 프레임 전송 시간이 오래 걸리는 경우 전송 효율이 극단적으로 떨어질 수 있다. 왜냐하면 하나의 프레임을 보내고 응답을 받고 그 응답이 송신 호스트로 다시 들어왔을 때 프레임을 전송할 수 있기 때문이다.
- 이를 보완하기 위해 연속형 전송을 지원한다.
- 연속형 전송: ACK 프레임을 받지 않고 여러 프레임을 연속으로 전송할 수 있는 방식
- 전송 오류 발생 가능성이 적은 환경에서는 상당히 효율적으로 작동한다. 하지만 오류 발생의 가능성이 있다.
- 이를 처리하는 방식이 바로 고백 N(Go-back N) 방식과 선택적 재전송 방식이다.
- 고백 N 방식: 오류 복구 과정에서 오류가 발생한 프레임을 포함해 이후에 전송되는 모든 정보 프레임을 재전송하는 방식
- 만약 10~
14 번호의 프레임을 전송하였는데 12번에서 오류가 발생했다는 것을 수신 호스트가 알게 된다면 12번 이후의 13~14번까지의 모든 프레임을 버리고 11번까지의 긍정 응답을 보내고 12번에 대한 부정 응답을 보낸다. 이런 응답을 받은 송신 호스트는 12번부터 다시 재전송한다.

- 선택적 재전송 방식: 고백 N 방식을 보완한 방식
- 수신 호스트가 올바르게 수신한 정보 프레임까지 버리게 되므로 이를 재전송 하지 않게 처리를 하도록 하는 방식이 선택적 재전송이다.
- 만약 앞의 경우와 같이 10~14번호의 프레임을 보냈는데 12번이 오류가 났다고 하자. 그러면 수신 호스트는 해당 11번까지의 긍정 응답과 12번의 부정 응답을 송신 호스트에 보내게 된다. 그러면 송신 호스트는 12번에 대한 프레임을 재전송한다. 그러면 수신 호스트는 14번까지 제대로 왔다는 긍정 응답을 송신 호스트에 보내게 된다. 그러면 송신 호스트는 13번부터 프레임을 보내는 것이 아니라 15번부터 새로운 프레임을 보내게 된다.

[피기배킹]
우리는 앞에서 살펴본 방식은 양방향 전송 기능에 대해 설명을 하지 못하였다. 피기배킹은 양방향으로 동시에 정보 프레임과 응답 프레임을 교차하여 전송하는 경우를 사용하는 방식이다. 정보 프레임과 응답 프레임을 각각 보내는 것이 아니라 정보 프레임을 전송하면서 응답 기능까지 동시에 수행하도록 프레임 구조를 변형시킨 것이다. 이렇게 되면 응답 프레임의 전송 횟수를 줄이는 효과가 있어 전송 효율을 높일 수 있다.

슬라이딩 윈도우는 매번 처리되는 중복된 요소를 버리지 않고 재사용함으로써 낭비되는 계산을 하지 않음으로써 효율적으로 처리하는 방법으로, 알고리즘 문제로도 출제될 수 있다.
Token ring
- 토큰링(Token ring) 근거리통신망(LAN) 기술은 OSI 모델의 데이터 링크 계층에서 쓰이는 근거리 통신망 프로토콜이다.
ALOHA
- 알로하 프로토콜은 시분할 다중접속 기술을 사용해 위성과 지구 사이의 무선 전송을 하는 프로토콜이다
- 1970년대초 하와이 군도에 있는 섬들간에 무선 데이타 통신망(패킷 라디오망)을 구성하기 위한 연구에서 발전
- 동일 채널을 여러 사용자가 공동으로 이용하는 방법으로써 다중접속을 검토하였으며,
- 다중접속방법의 효시가 됨
- 동작원리
- 발신노드가 패킷을 전송하면, 수신노드는 유효한 패킷인가를 확인하고 즉시 ACK 발송
- 송신노드는 ACK가 올때까지 기다리다가, 최대왕복 전파지연 시간 이상이 되면 해당
패킷을 재전송하는 방법으로 동일 채널을 다수의 노드가 이용
- 만일 동시에 여러 노드가 패킷을 보내면 충돌(Collision)이 발생
- 부하가 증가할수록 패킷 충돌 횟수가 늘어나므로 최대 채널사용율은 18% 이하로 저조
- 종류
- Pure Aloha
- 가장 오래된 임의매체접근에 의한 다원접속방식, 1970년대초 하와이대학에서 개발
- 충돌방지를 위한 고려사항으로,
. 임의 대기시간(Backoff Time)을 줌
. 최대 재전송 회수를 제한
- Slotted Aloha
- 동기화된 시간틈새(Slotted Time)에서만 전송하도록 함
USN
- 유비쿼터스 센서 네트워크(Ubiquitous Sensor Network: USN)
- 필요한 모든 것(곳)에 전자(Radio Frequency IDentification: RFID) 태그를 부착하고 이를 통하여 사물의 인식정보는 물론 주변의 환경정보까지 탐지하여 이를 실시간으로 네트워크에 연결하여 정보를 관리하는 것
- 궁극적으로 모든 사물에 컴퓨팅 및 통신 기능을 부여하여 언제(anytime), 어디서나(anywhere), 네트워크, 디바이스, 서비스에 관계없이 통신이 가능한 환경을 구현하기 위한 것이다.
- USN 구현을 위해서는 인식정보를 제공하는 다양한 방식의 RFID 태그를 개발하고, 이에 각종 센싱 기능을 추가하며, 이들간의 네트워크를 구축해야 할 것이다.
VAN(Value Added Network), 부가가치 통신망
- 신용카드회사와 개인사업자 사이에서 계약대행 및 신용카드 거래 중계업무 등을 중계해주는 중간다리의 역할
- VAN은 크게 카드VAN과 금융VAN으로 나뉩니다.
- 카드VAN : VAN이 없으면 개인사업자들은 손님들의 신용카드사용에 대한 승인 처리를 위한 통신회선 설치 비용이 많이 들고, 일일이 신용카드회사의 승인을 얻어야 하는 불편함이 생깁니다. 그러므로 효율성과 편의성을 고려하면 개인사업자들은 신용카드 중계기관인 VAN이 필요하며, 이러한 중계를 전문적으로 해주는 업체를 VAN사라고 부릅니다. 보편적으로 신용카드에 관련된 통신업무 및 정보처리 관련 업무를 하는 사업자를 칭합니다.
- 우리나라의 VAN사에는 한국신용정보(KICC), 금융결제원(KFTC), 조선무역(KSVAN), 한국모바일페이먼트서비스(KMPS), KIS, CC케이벤, 나이스정보통신(NICE) 등 10여군데가 있는 것으로 알려져 있습니다.
- 금융VAN : VAN비즈니스는 고객에게 끊임 없이 증가하는 고객요구를 만족시키는 다양한 부가가치가 높은 금융 서비스를 제공합니다. 기본적으로 업체가 계좌조회, 이체 등과 같은 은행업무를 보기 위해서는 은행에 붙어야 합니다. 업체에서 은행에 바로 붙을 수는 있겠지만 은행은 폐쇄망으로 관리를 하고 전용선을 통해야 하기 때문에 업체가 직접 전용선을 깔고 연동하기에는 비용과 유지비가 상당할 것 입니다. 은행 입장에서도 수천 개의 업체와 직접 연계가 불가능 합니다. 그러므로 은행업무를 위한 통신서비스를 제공해주는 VAN사와 같은 대행업체를 통해 관리 포인트를 줄이고 보안도 높일 수 있으며 더 빠르고 더 나은 통신을 할 수 있습니다.
- 예 : 금융결제원의CMS, Giro EDI, BillingOne Plus, Card VAN, BANKPOS, TrusBill, NaraBill 및 해외 비즈니스와 같은 서비스가 포함됩니다.
- VAN사인 나이스페이먼츠는 은행 펌뱅킹 VAN 사업을 하고자 디리아와 계약을 맺고 업체와 은행 연계가 가능한 당사의 펌뱅킹 솔루션 CruzFirm을 도입하여 VAN사 측면 시스템인 '금융VAN시스템'을 구축하였습니다.
IEEE 802.1X
- 네트워크에 접속하는 컴퓨터등의 단말을 인증하는 방법을 정한 표준 규격의 하나.
- 정당한 등록 이용자만이 LAN(구내 네트워크)이나 무선 LAN(Wi-Fi)에 접속할 수 있도록 한다.
- 단말이 통신하려고 하면, 네트워크의 말단에 있는 LAN 스위치나 액세스 포인트등이 인증을 요구하여,완료될 때까지 인증정보의 송수신 이외의 통신을 거부한다.
CSMA/CD 특징
- Carrier Sense Multiple Access/Collision Detection 개념
- IEEE 802.3, LAN의 이더넷 전송 프로토콜에서 사용한다. 즉 우리가 사용하는 인터넷 환경에서 항상 적용되고 있는 방식이다.
- Carrier Sense : 회선의 상태에 따라
- Multiple Access : 누구든 동시에 접근할 수 있으면서
- Collision Detection : 충돌을 검사하여 제어하는 통신 방식
제어원리 및 제어방식 3가지(자세히보기)
LAND ATTACK
- 출발지와 목적지가 같은 패킷을 만들어 공격 대상이 자기 자신에게 응답하도록 해 부하를 발생시킨다.
- Land Attack이 있는 경우 tcpdump에서 아래와 같이 출발지와 목적지가 같은 패킷이 발견된다.
18:15:59.282312 192.168.1.5:2543 > 192.168.1.5:http SW 674719801:674719801(0) win 65535
18:15:24.123234 192.168.1.5:1943 > 192.168.1.5:http SW 674719801:674719801(0) win 65535
18:15:34.421442 192.168.1.5:1822 > 192.168.1.5:http SW 674719801:674719801(0) win 65535
- 대응: 침입차단시스템 또는 OS패치를 통해 출발지 주소와 목적지 주소가 동일한 패킷을 차단시킨다.
[NCS]
파워포인트 기능, 인코더 3종류, 도표작성, 자원관리 회계 부분, RSS, 트위터 개념
[출처]
https://copycode.tistory.com/74 [ITstory]
http://blog.skby.net
https://www.itfind.or.kr/WZIN/jugidong/1165/116503.htm
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=direa0609&logNo=221469369213
https://itwiki.kr/w/CSMA/CD
https://itwiki.kr/w/랜드_어택