분류 전체보기

· Java/BOJ
문제 https://www.acmicpc.net/problem/3055 3055번: 탈출 사악한 암흑의 군주 이민혁은 드디어 마법 구슬을 손에 넣었고, 그 능력을 실험해보기 위해 근처의 티떱숲에 홍수를 일으키려고 한다. 이 숲에는 고슴도치가 한 마리 살고 있다. 고슴도치는 제 www.acmicpc.net 풀이 하나의 지도 배열에 BFS가 두 번 쓰이는 문제입니다. 전형적인 BFS 문제에 물이 퍼지는 것을 고려해야하는 문제입니다. 특정 좌표에 몇 초 후에 물이 도달하는 지는 BFS를 통해 미리 구할 수 있습니다. time[][] 이라는 배열을 선언하여, 물이 미래에 도착할 시간을 저장하고, 고슴도치의 시간(depth)와 물이 도착하는 시간(time[][])을 비교해 문제를 해결했습니다. 소스코드 impor..
· CS/Network
이번 포스팅에서는 혼잡 제어(Congestion Control)에 대해 알아보겠습니다.   TCP는 네트워크 상황에 따라 패킷을 보내는 속도를 조절해야만 합니다. 만약 네트워크가 복잡해지며, 한 라우터 버퍼에 데이터가 몰릴 경우에 송신자들은 다시 재전송을 하게 되고, 이것은 혼잡을 가중시켜 결국 오버플로우나 데이터 손실을 발생시키게 됩니다.   이렇게 네트워크가 막힌다면 네트워크에 접속한 모두가 패킷을 전송할 수 없으므로, 이를 파악하고 방지하기 위해 데이터 전송을 제어하는 것을 혼잡 제어(Congestion Control)라고 합니다.   네트워크 상황을 어떻게 확인할 것인가 네트워크 상황을 유추하기 위해서는 네트워크에서 직접 데이터를 보내줄 수는 있지만, 그렇게 하기 위해서는 라우터가 처리를 해주어야..
· etc
https://solved.ac/profile/dcloud
· CS/Network
이번 포스팅에서는 TCP의 주된 기능인 Flow control과 3 / 4 Way-Handshake에 대해서 살펴보겠습니다. 1. 흐름 제어(Flow Control) 데이터를 전송할 때, 짧은 시간에 많은 데이터를 보낼 수록 좋을 것만 같지만, 실제로는 그렇지 않습니다. 송신자에서 많은 데이터를 보내도, 수신자에서 그것을 처리할 수 없다면 많은 데이터들이 버려지게 됩니다.  그래서 수신자가 처리할 수 있는 용량을 송신자에게 피드백을 해주어야 합니다. 이를 위해 recv 버퍼의 크기를 기록해 전송하게 됩니다.  다시 TCP 세그먼트 구조를 살펴보겠습니다. 그림을 보면 4번째 줄에 Receive window가 있는 것을 볼 수 있습니다. 이것이 바로 현재 남은 recv버퍼의 크기를 가르킵니다.  만약 수신자..
· CS/Network
지난 포스팅에서 RDT 프로토콜에 대해 다루었습니다. 이번 포스팅에서는 TCP에 대해 살펴보겠습니다.   1. TCP : Connection-oriented transport먼저, TCP의 특징부터 살펴보면 아래와 같습니다. (1) Point-to-point UDP와 달리 TCP는 소켓 한 쌍의 통신을 담당합니다. UDP가 하나의 서버 소켓에 여러 개의 클라이언트 소켓이 매핑되어 통신을 하는 반면,  TCP는 한 서버 소켓에 무조건 하나의 클라이언트 소켓이 연결되는 것입니다. 즉, 하나의 sender에 하나의 receiver가 연결되는 것입니다.  (2) reliable, in-order byte stream신뢰성이 보장되므로 데이터가 유실되거나 데이터에 에러가 발생하지 않는다는 것입니다. 그래서, 데이..
· CS/Network
[네트워크] RDT(Reliable Data Transfer)1. RDT(Reliable data transfer) RDT란, 데이터를 전송할 때 패킷 데이터의 유실과 손상이 발생하지 않도록 보장해주는 프로토콜입니다. TCP와 UDP를 구분하는 큰 특징이기도 합니다. RDT의 단계를 이상적인dcloud.tistory.com 지난 포스팅에서 RDT에 대한 내용을 다루었습니다. 이번 포스팅에서는 Pipelined Protocol을 다루겠습니다.  1. Pipelined Protocol Pipelined Protocol은 신뢰성 있는 데이터 전송 프로토콜인 RDT의 성능 한계를 개선한 프로토콜 입니다. 여기서 신뢰성이란, 애플리케이션 계층에서 내려온 메시지가 유실되지 않고 에러 없이 상대 애플리케이션 프로세스..
동구름이
'분류 전체보기' 카테고리의 글 목록 (17 Page)