본문 바로가기

전체 글54

TCP / UDP 차이점 TCP (Transmission Control Protocol) TCP 특징 연결형 서비스 연결형 서비스로 가상회선방식을 사용한다. ex) 3-way-handshaking, 4-way-handshaking 자세한 내용은 위에 링크를 클릭해주길 바란다. 흐름제어 (Flow Control) 데이터의 처리속도를 제어한다. 이를 제어함으로써, 수신자가 데이터를 받는 데에 있어 오버플로우 발생을 방지한다. segment 구조에서 receive window가 receiver가 얼만큼의 데이터를 받을 수 있는지에 대한 정보를 나타낸다. 혼잡제어 (Congestion Control) 네트워크 내에서의 데이터 양을 제어함으로써 통신의 혼잡/부하가 생기는 것을 방지한다. 전이중,점대점 방식 전이중 방식: 양방향으로 전송/.. 2023. 1. 16.
'TCP 3-way-handshake & 4-way-handshake'는 무엇일까? TCP란? TCP는 네트워크 계층 중 전송 계층에서 사용하는 프로토콜 중 하나로, 신뢰성을 보장하는 연결형 서비스이다. TCP 특징 전송되는 데이터의 신뢰성 보장 (흐름 제어, 혼잡 제어, 오류 제어) 파일전송에 주로 사용 가상 회선을 만들어 신뢰성을 보장 ※ TCP가 가상회선 방식을 제공한다는 것은 발신지와 수신지를 연결하여 패킷을 전송하기 위한 논리적 경로를 배정한다는 말이다. 3-way-handshake 연결하고자 하는 두 장치 간의 논리적 접속을 성립하기 위해 사용하는 연결 확인 방식으로, 3번의 확인 과정을 거친다고 해서 3 way handshake라고 부른다. TCP 3-way-handshake를 간단히 표현하면 다음과 같다. Client -> Server : 내 말 들려? Server -> .. 2023. 1. 13.
OSI 7계층 OSI(Open Systems Interconnection) 7계층 OSI 7계층이란? 통신이 일어나는 과정을 7단계로 정의한 국제 통신 표준 규약이다. 계급, 상하구조가 존재한다. ex)물리적 회선 연결이 있어야 데이터를 보낼 수 있다. 각 계층은 독립되어있다 따라서 용이성, 유지관리가 수월하다. 왜 7계층으로 나눌까? 통신이 일어나는 과정을 단계별로 알 수 있고, 특정한 곳에 이상이 생기면 그 부분만 수정할 수 있기 때문이다. OSI 7계층 나열 1) 물리 계층 (Physical Layer) - 리피터, 케이블, 허브 등 데이터를 전기적인 신호로 변환해서 주고받는 기능을 진행하는 공간 데이터 단위: 데이터는 0과 1의 비트열, 즉 On,Off 전기적 신호 상태로 이루어진다. 데이터를 전달하기만 한다... 2023. 1. 6.
RISC-V 의 명령어들 속에 R-format RISC-V의 명령어 오늘은 RISC-V의 많은 형태중 R-format , 즉 R의 형태를 띈 예시를 알아 볼 예정이다. 우선 R-format의 명령어들의 종류는 ADD ex) add x5, x6, x7 // x5 = x6 + x7 SUB ex) sub x5, x6 ,x7 // x5 = x6 - x7 SLL - Shift left logical ex) sll x5, x6, x7 // x5 = x6 > x7 OR ex) or x5, x6, x7 // x5 = x6 | x7 AND ex) and x5, x6, x7 // x5 = x6 & x7 등이 있다. 이게 왜 R-format 인지 궁금한 사람들이 있을 것이다. 다음에 소개할 I-format과 비교하면서 얘기할 예정이다. 우선은 이런 종류가 있다는 것만 .. 2022. 12. 27.
데이터베이스를 왜 사용할까? + 특성,구성요소,성능 데이터베이스 데이터베이스가 존재하기 이전에는 파일 시스템을 이용해서 데이터를 관리하였다. (이는 현재도 부분적으로 사용되고 있다.) 데이터를 각각의 파일 단위로 저장하며 이러한 일들을 처리하기 위한 독립적인 애플리케이션과 상호 연동이 되어야 한다. 이 때의 문제점은 데이터 종속성 문제와 중복성, 데이터 무결성이다. 데이터베이스의 특징 즉 사용하는 이유 데이터의 독립성 물리적 독립성 : 데이터베이스 사이즈를 늘리거나 성능 향상을 위해 데이터 파일을 늘리거나 새롭게 추가하더라도 관련된 응용 프로그램을 수정할 필요가 없다. 논리적 독립성 : 데이터베이스는 논리적인 구조로 다양한 응용 프로그램의 논리적 요구를 만족시켜줄 수 있다. 데이터의 무결성 여러 경로를 통해 잘못된 데이터가 발생하는 경우의 수를 방지하는 .. 2022. 12. 24.
이분 탐색의 원리 + 백준 1920 수 찾기 이분 탐색의 이분은 '둘로 나눈다'는 뜻이다. 탐색할 자료를 둘로 나누어 찾는 값이 있을 법한 곳만 탐색하기 때문에 자료를 하나하나 찾아야 하는 순차 탐색보다 원하는 자료를 훨씬 빨리 찾을 수 있다. 600page 책을 펼치는 과정으로 예시를 들면 1. 책 510쪽을 펴야한다고 가정. 2. 책의 중간쯤 펼쳐 300쪽이 나옴 3. 찾고자 하는 510은 300쪽보다 뒤에 있음. 따라서 300쪽 앞인 1~300쪽은 더 이상 찾을 필요가 없다. 4. 301~600 사이에 중간쯤을 또 펼쳐 450p가 나옴. 510은 더 뒤에 있음. 301~450 배제. 5. 이 과정을 반복하며 원하는 510쪽이 나오면 탐색을 멈춘다. 이렇게 하게되면 이분 탐색의 계산 복잡도는 O(logn)으로, 순차 탐색의 계산 복잡도인 O(n.. 2022. 12. 21.