목록1 week 1 conquer/CS (6)
05AM
☀️ TCP 통신의 문제점 Packet Loss (손실) : 데이터 패킷이 송신자에서 수신자로 전송되는 도중에 네트워크 상에서 손실되는 현상 원인: 네트워크 혼잡, 잘못된 라우팅, 패킷 충돌, 하드웨어 결함 등 다양한 이유로 발생할 수 있습니다. 영향: 데이터의 전송 속도 감소, 연결의 비안정성, 데이터의 무결성 문제 등이 발생할 수 있습니다. 해결 방법: 재전송 요청(ARQ)와 같은 메커니즘을 사용하여 손실된 패킷을 다시 보내거나, 전송 제어 프로토콜(TCP)와 같은 프로토콜이 패킷 손실을 감지하고 재전송을 수행합니다. Out-of-Order Packets (순서 바뀜) : 데이터 패킷들이 송신자에서 보낸 순서와 다른 순서로 수신자에게 도착하는 현상 원인: 패킷들이 서로 다른 경로로 전송되거나, 네트워..
☀ 암호화 정보 보안의 핵심 요소 중 하나로, 데이터를 변형하여 원본을 알 수 없게 하는 과정을 의미 이를 가능하게 하는 것이 암호화 알고리즘과 키이다. 대칭키와 공개키는 암호화의 두 주요 방법으로, 각기 다른 특성과 용도를 가지고 있다. ☀ 대칭키 암호화 (Symmetric Key) 암호화와 복호화에 같은 암호키(대칭키)를 사용하는 알고리즘 특징 단일 키 사용 암호화와 복호화에 동일한 키를 사용한다. 비밀키 하나만 알아내면 해독이 가능하다. 속도 대칭키 암호화는 공개키 암호화에 비해 연산이 단순하여 속도가 빠르다. 키 관리 대칭키 전달과정에서 보안 위험에 노출될 수 있다. 장점 속도가 빨라 대용량 Data 암호화에 적합하다. 단점 키를 교환해야 하는 문제가 있다. 키 관리 어렵다. 확장성 떨어진다. 기..
☀ HTTP (Hypertext Transfer Protocol) 클라이언트와 서버 간 통신을 위한 통신 규칙 세트 또는 프로토콜 사용자가 웹 사이트를 방문하면 사용자 브라우저가 웹 서버에 HTTP 요청을 전송하고, 웹 서버는 HTTP 응답으로 응답한다. 웹 서버와 사용자 브라우저는 데이터를 일반 텍스트로 교환한다. 간단히 말해 HTTP 프로토콜은 네트워크 통신을 작동하게 하는 기본 기술이다. 작동 방식 HTTP는 OSI (Open Systems Interconnection) 네트워크 통신 모델의 어플리케이션 계층 프로토콜이다. HTTP는 여러 유형의 요청과 응답을 정의한다. 예를 들어, 웹 사이트의 일부 데이터를 보려는 경우 HTTP GET 요청을 전송한다. 연락처 양식 작성과 같은 일부 정보를 전송하..
☀️ 전송 계층 (Transport Layer) 양 끝단의 사용자들이 신뢰성있는 데이터를 주고 받을 수 있도록 해주어, 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해주는 역할 상위 계층과 하위 계층 간의 인터페이스 역할 프로세스 간의 논리적인 통신을 제공한다. 데이터 링크 계층 : 물리적인 연결 네트워크 계층 : 호스트 간 논리적인 통신, 데이터의 전달 경로를 설정 💡 참고 전송 계층의 대표적인 프로토콜은 TCP와 UDP이다. 전송 계층의 패킷을 세그먼트라고 부르는데, UDP 프로토콜에서는 이를 종종 데이터그램이라고 하기도 한다. [출처] [네트워크] TCP/UDP와 3 -Way Handshake & 4 -Way Handshake (velog.io) ☀️ TCP (Transmissi..

정의 [위키백과 - SOLID 원칙] 컴퓨터 프로그래밍에서 SOLID란 로버트 마틴이 2000년대 초반에 명명한 객체 지향 프로그래밍 및 설계의 다섯 가지 기본 원칙을 마이클 페더스가 두문자어 기억술로 소개한 것이다. 프로그래머가 시간이 지나도 유지 보수와 확장이 쉬운 시스템을 만들고자 할 때 이 원칙들을 함께 적용할 수 있다. SOLID 원칙들은 소프트웨어 작업에서 프로그래머가 소스 코드가 읽기 쉽고 확장하기 쉽게 될 때까지 소프트웨어 소스 코드를 리팩터링하여 코드 냄새(code smell)를 제거하기 위해 적용할 수 있는 지침이다. 이 원칙들은 애자일 소프트웨어 개발과 적응적 소프트웨어 개발의 전반적 전략의 일부다. ※ 아래 내용은 넥스트리소프트의 게시물을 읽고, 그 중 일부를 발췌하여 정리하였습니다..

WebSocket을 알아보기 전에 HTTP의 정의를 먼저 알아보자. HTTP 서버와 클라이언트는 프로토콜이라는 정해진 규약에 따라 통신하는데, HTTP는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜이다. 서버와 클라이언트의 통신에 일반적으로 사용되는 http 프로토콜은 클라이언트가 요청을 보내면 서버가 응답하는 형식으로, 서버는 응답을 보낸 후 연결을 끊는 단방향 통신이다. 또한 서버가 클라이언트의 상태를 보존하지 않는 무상태성이라는 특징을 가지고 있어 실시간으로 빠른 응답이 어렵다. 이런 점을 보완하기 위해 개발된 프로토콜이 WebSocket이다. WebSocket 서버와 클라이언트 간의 양방향 통신을 제공하기 위해 개발된 프로토콜(WS)이다. WebSocket은 클라이언트가 접속..