[네트워크]Reliable data transfer(rdt1.0, rdt2.0, rdt2.1, rdt2.2, rdt3.0)란?
·
Network
Reliable data transfer(rdt) 가 뭔가요? 먼저, RDT는 Reliable Data Transfer의 약어로 신뢰성 있는 데이터 전송을 의미합니다. 이는 데이터를 전송하는 과정에서 손실, 중복, 순서 오류 등이 발생할 수 있는 불안정한 네트워크 환경에서도 안정적으로 데이터를 전송하기 위한 기술입니다. TCP는 상위 계층에서 사용되는 프로토콜로, 신뢰성 있는 데이터 전송을 보장하기 위해 설계되었습니다. 하지만, 하위 계층에서는 데이터 전송에 불안정한 요소가 존재하기 때문에 TCP와 같은 신뢰성 있는 프로토콜이 제공되지 않습니다. 따라서, 전송 계층에서는 RDT를 이용하여 하위 계층의 불안정성을 보완하고, 신뢰성 있는 데이터 전송을 보장합니다 위 그림에서 파란부분이 송신측이고 초록색 부분..
[네트워크]트렌스포트 계층(Transport Layer) - 5
·
Network
트랜스포트 계층(Transport Layer)란? 인터넷은 매우 크고 복잡한 구조를 가지고 있다 이로써, 인터넷은 계층화되어서 설계가 되었는데, 이것이 네트워크 프로토콜 계층(Network protocol Layer)이다 위 그림처럼 7개의 계층으로 나뉘어 있는데, 우리가 잘 아는 IP는 네트워크 계층이고 HTTP는 응용계층에 속한다 그리고 이제 공부할 트랜스포트 계층은 7계층에서 Layer 4에 속해있다 네트워크 프로토콜은 7계층으로 나뉘기도 하고 4계층으로 표현되기도 한다 트랜스 포트 계층(Transport Layer) 네트워크 계층과 애플리케이션 계층 사이에 있는 것처럼 트랜스포트 계층은 네트워크 구조의 핵심 역할을 한다 1. 서로 다른 호스트(Host)들이 어플리케이션 프로세스 간에 논리적 통신을..
[소프트웨어 공학] 시스템 모델링(System modeling) - 5
·
Software Engineering
소프트웨어 과정 요구 공학(Requirements Engineering) 시스템 모델링(System Modeling) 시스템 아키텍처(System Architecture) 시스템 디자인(System Design) 이 네 가지 과정은 소프트웨어 개발의 전반적인 과정에서 중요한 역할을 수행하며, 다양한 측면에서 소프트웨어 개발을 지원합니다. 왜 중요한가요? 모델링은 복잡한 시스템을 적절한 수준의 추상화된 모델로 단순화하여 이해하기 쉽게 만들어줍니다. 이를 통해 시스템의 구조, 기능, 동작 등을 파악하고, 문제를 예측하고 해결하기 위한 기초를 제공합니다. 따라서 모델링은 소프트웨어 개발 프로세스에서 매우 중요한 역할을 합니다. 모델링이란? 어떤 시스템의 대해서 추상화되어서 표현된 모델을 개발하는 과정 각각의 ..
[소프트웨어 공학] 엔지니어가 되기 위한 첫걸음 - 0
·
Software Engineering
소프트웨어란? 우리 삶 주변, 문화, 상업적 부분에서도 많은 부분을 접하고 있는데, 사회 기반 시설(Infrastructures)과 공익사업(Utilities)은 컴퓨터 시스템에 의해서 컨트롤 되고, 대부분의 전기를 이용하는 제품은 소프트웨어를 내재하고 있습니다 공업시설(Industrial manufacturing)과 유통은 금융시스템(Financial System)처럼 철저히 컴퓨터화되어 있습니다 음악 산업, 컴퓨터 게임, 영화, 유튜브 같은 엔터테인먼트 산업 또한 소프트웨어가 빠질 수 없습니다 소프트웨어 시스템은 추상적이고 무형입니다 제품의 특성, 물리적 법칙, 제조 과정의 제약을 받지 않습니다 물리적 제약이 없기 때문에, 소프트웨어 시스템이 극도로 복잡해지고. 이로 인해 이해하기 어렵고 변경하는데 ..