마스크는 답답하다
DNS (Domain Name System)
Computer Science/Network 2023. 4. 22. 03:08

DNS (Domain Name System) DNS란 우리가 흔히 검색창에 작성하는 사이트명, 즉 URL을 실제 내트워크상에서 사용하는 IP주소로 변경하고 해당 IP 주소로 접속하는 시스템을 의미한다. 예를 들어 현재 사용하는 블로그의 주소 tlskals1.tistory.com를 검색창에 입력하면 웹 브라우저는 최상위 네임 서버(권한을 갖고있는 DNS 서버)에게 해당 주소의 IP를 확인할때까지 하향하며 질의하여 해당 URL의 IP를 찾아 사용자의 요청에 응답한다.

HTTP 상태 코드
Computer Science/Network 2023. 3. 30. 21:31

HTTP 상태 코드 HTTP 상태 코드란 클라이언트가 요청을 보냈을 때 서버에서 보내주는 응답 상태를 의미한다. 우리가 잘 알고있는 404 Not Found 오류등이 있다. 1XX 코드 (Informational) 서버가 요청을 받았고, 작업이 진행 중 이라는 의미이다. 2XX 코드 (Successful) 서버가 요청을 성공적으로 받았고, 정상적으로 처리했다는 의미이다. 200 OK -> 요청 성공 201 Created -> 요청이 성공하여 새로운 리소스가 생성됨 202 Acceptec -> 요청이 접수되었으나 처리가 완료되지 않음 204 No Content -> 서버가 요청을 정상적으로 처리했으나, 컨텐츠를 제공하지 않음 3XX 코드 (Redirection) 요청을 완료하기 위해서는 추가적인 행동이 필..

article thumbnail
URI & URL & URN
Computer Science/Network 2023. 3. 29. 23:39

URI (Uniform Resource Identifier) URI는 특정 리소스를 식별하는 통합 자원 식별자를 의미하며, 우리가 사용하는 웹 기술에서는 사용중인 논리적 또는 물리적 리소스를 식별하는 고유한 문자열 시퀀스이다. 쉽게 말하면 인터넷상 존재하는 리소스 자원 자체를 식별하는 시퀀스이다. URI와 URL, URN 구조는 다음과 같다 URL (Uniform Resource Locator) 우리가 사용하는 주소창에서 볼 수 있는 것으로 다른 말로 웹 주소라고도 한다. 인터넷상에서 특정 리소스가 어디에 있는지 알려주기 위한 규약이다. URI의 구조는 다음과 같다. scheme://[userinfo@]host[:port][/path][?query][#fragment] scheme : 사용 프로토콜을 의..

TCP와 UDP
Computer Science/Network 2023. 3. 29. 21:41

TCP (Transmission Control Protocol) 인터넷 상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용되는 프로토콜로 대표적인 연결 지향 프로토콜이다. TCP의 특징 연결 지향 방식 3-Way Handshaking 과정을 통한 연결 및 4-Way Handshaking을 통해 해제 신뢰성이 높음 (데이터 전달 보증, 패킷의 순서 보장) 신뢰성이 중요한 전송을 사용하기에 적합 UDP (User Datagram Protocol) 데이터를 데이터그램 단위로 처리하는 대표적인 프로토콜로 비연결 프로토콜이다. UDP의 특징 비연결형 통신 TCP에 비해 빠른 속도 신뢰성이 낮음 (데이터의 전달 보증이 되지 않음) 연속성이 중요한 전송을 사용하기에 적합

article thumbnail
트랜잭션 격리 레벨
Computer Science/Network 2023. 3. 2. 12:54

트랜잭션 격리 레벨 (Transaction Isolation Level) 여러 트랜잭션이 동시에 처리될 때, 특정 트랜잭션이 다른 트랜잭션에서 변경 또는 조회하는 데이터를 볼 수 있게 허용할지 말지를 결정하는 것 READ UNCOMMITTED (커밋되지 않은 읽기) READ COMMITTED (커밋된 읽기) REPEATABLE READ (반복 가능한 읽기) SERIALIZABLE (직렬화 가능) 격리 레벨은 READ UNCOMMITTED부터 SERIALIZBLE로 갈수록 높아진다. 트랜잭션 격리 레벨에 따라 발생하는 문제점 트랜잭션 격리 레벨 Dirty Read Non-Repeatable Read Phantom Read READ UNCOMMITTED O O O READ COMMITTED O O REPEA..

트랜잭션 (Transaction)
Computer Science/Network 2023. 3. 2. 11:32

트랜잭션 (Transaction) 논리적인 작업 셋 자체가 Commit (100% 적용됨) 또는 Rollback(아무것도 적용되지 않음) 을 보장해 주는것으로 데이터의 정합성을 보장하기 위한 기능 트랜잭션 ACID Atomicity (원자성) Consistency (일관성) Isolation (격리성) Durability (지속성) Atomicty (원자성) : 트랜잭션 내에서 실행한 작업들은 마치 하나의 작언인 것처럼 모두 성공하거나 모두 실패해야 한다. Consistency (일관성) : 모든 트랜잭션은 일관성있는 데이터베이스 상태를 유지해야 한다. Isolation (격리성) : 동시에 실행되는 트랜잭션들이 서로에게 영향을 미치지 않도록 격리해야한다. Durability (지속성) : 트랜잭션이 성..

동시성 이슈
Computer Science/Network 2023. 3. 2. 10:49

동시성 이슈 (Concurrency Issue) 어떤 두 사건이 같은 시간에 일어나는 것을 이르는 말 쉽게 예를 들면 재고가 1개인 상품에 A,B 2명의 유저가 동시에 구매 요청을 누르는 상황을 생각해보자 상품이 어떠한 사용자에게 배송이 될지 예측할 수 없다. 이러한 상황을 경쟁 조건 (race condition)이라고 한다. 프로그램이 개발자의 제어를 떠나 데이터를 조작할 때 타이밍 또는 접근 순서에 따라 결과값을 예상할 수 없는 경우를 뜻한다. 또 다른 상황을 생각했을 때 각각의 요청들이 서로 리소스 해제를 기다리고 있어 둘 중 어느 요청도 진행할 수 없는 상황이 발생할 수도 있다. 이러한 상황을 교착 상태(dead lock)라고 한다. 동시성 이슈가 문제가 되는 이유 예상값과 결과값이 다를 수 있지..

article thumbnail
OSI 모델과 TCP/IP 모델
Computer Science/Network 2023. 2. 22. 03:52

OSI 모델 ISO(국제표준화기구)에서 제정한 통신 표준 규격 7개의 계층(레이어)로 구성된다. 계층 이름 설명 7계층 응용 계층 (Application Layer) 이메일 & 파일 전송, 웹사이트 조회 등 애플리케이션에 대한 서비스를 제공 6계층 표현 계층 (Presentation Layer) 문자 코드, 압축, 암호화 등의 데이터를 변환 5계층 세션 계층 (Session Layer) 세션 체결, 통신 방식 결정 4계층 전송 계층 (Transport Layer) 신뢰할 수 있는 통신 구현 3계층 네트워크 계층 (Network Layer) 다른 네트워크와 통신하기 위한 경로 설정 및 논리 주소 결정 2계층 데이터 링크 계층 (Data Link Layer) 네트워크 기기 간의 데이터 전송 및 물리 주소를 ..

검색 태그