CS공부 8

계층별 프로토콜의 종류와 특징-이더넷,스위치,IP,라우터,ARP

📖이전글 OSI 7계층과 프로토콜-개념,프로토콜,기능 목차 1계층과 2계층의 중심 프로토콜, 이더넷 이더넷(Ethernet)은 컴퓨터 네트워크 기술의 하나로, 전세계에서 가장 일반적으로 사용되는 LAN에서 가장 많이 활용되는 기술 규격이다. 프레임을 만드는 방법 제 3계층의 패킷에 헤더나 FCS를 추가하여 프레임을 만든다. 제3계층(네트워크 계층으로부터 받은 데이터(패킷)에 프레임의 처음을 나타내는 프리앰블(preamble) 추가 목적지(수신자)와 출발지(송신자)를 나타내는 헤더 추가 비트 오류 체크에 사용하는 FCS(Frame Check Sequence) 를 추가 통신시 컴퓨터 식별 방법 MAC 주소라는 48비트로 된 식별자를 사용하여 컴퓨터를 식별한다. MAC주소란 네트워크 세그먼트의 데이터 링크 계..

OSI 7계층과 프로토콜-개념,프로토콜,기능

목차 OSI참조모델 다른 시스템 간의 원활한 통신을 위해 ISO(국제표준화기구)에서 제안한 통신 규약(Protocol)이다. OSI 7계층 7계층은 다음과 같다. 각각의 계층은 다른 역할을 갖고 있으며 따로따로 작동한다. OSI 참조 모델은 많은 프로토콜로 구성되어 있지만 실제 네트워크에서 사용하는 프로토콜은 한정되어있다. 제 1계층,2계층 : 이더넷 제 3계층 : IP,ICMP,ARP 제 4계층 : TCP,UDP 제 5계층~제7계층 : 애플리케이션 프로토콜 프로토콜의 역할 프로토콜은 서로 다른 기기들 간의 데이터 교환을 원활하게 수행할 수 있도록 표준화 시켜놓은 통신 규약이다. 기본 요소 구문 : 전송하고자 하는 데이터의 형식, 부호화, 신호 레벨 등을 규정 의미 : 두 기기 간의 효율적이고 정확한 정..

클라이언트와 서버(client/server)-개념,관계,네트워크

목차 클라이언트와 서버 -클라이언트 : 네트워크를 이용하여 서버(Server)측에 서비스 요청을 하는 컴퓨터 -서버 : 네트워크에서 다른 컴퓨터나 소프트웨어와 같은 클라이언트에게 서비스를 제공하는 컴퓨터 쉽게 말해 서버는 서비스를 제공하는 컴퓨터를 뜻하고, 클라이언트는 서비스를 사용하는 컴퓨터이다. 웹서버의 경우 웹브라우저가 클라이언트이며, 웹 사이트의 콘텐츠가 있는 컴퓨터가 서버이다. 서버가 서비스를 제공하기 위해서는 서버프로그램이 있어야 하고 클라이언트가 서비스를 제공받기 위해서는 서버 프로그램과 연결할 수 있는 클라이언트 프로그램이 있어야한다. 예를들어 FTP 서버에 접속해서 파일을 전송받기 위해서는 알FTP와 같은 FTP 클라이언트 프로그램이 필요하다. 클라이언트와 서버의 관계 서버는 클라이언트로..

검색 알고리즘(2)-이진검색

📖이전글 검색 알고리즘(1)-선형검색 목차 이진검색 일정한 규칙으로 늘어놓은 데이터 모임에서 아주 빠른 검색을 수행하는 알고리즘이다. 전제 조건은 요소가 오름차순 또는 내림차순으로 정렬되어 있어야 한다. 키 값은 21이다. 검색 범위의 맨 앞 인덱스를 pl, 맨 끝 인덱스를 pr, 가운데 인덱스를 pc 라고 한다. 제일 가운데 요소인 a[3] 부터 검사한다. 검색하려는 값 21은 a[3] 값인 10보다 크다. 때문에 왼쪽의 값들은 제외한다. 그 다음 a[4]~a[6] 의 가운데 요소인 a[5] 를 검사한다. 21은 a[5] 값인 22보다 작기 때문에 오른쪽의 값들은 제외한다. a[4] 값인 21을 찾고 검색 종료. 여기서 중요한 것은, 이진 검색을 한 단계씩 진행할 때마다 검색 범위가 거의 반으로 좁혀진..

검색 알고리즘(1)-선형검색

목차 검색 알고리즘 검색 알고리즘이란 데이터 집합에서 원하는 값을 가진 요소를 찾아내는 알고리즘이다. 원하는 값을 찾기 위해서는 키(key) 값이 필요하다. 서울에 사는 사람을 찾기 위해서는 키값을 '서울' 로 지정해야 한다. 20세 이상 30세 미만인 사람을 찾기 위해서는 키 값을 20세 이상 30세 미만 으로 설정해야 한다. 대부분의 경우에서 키는 데이터의 일부이다. 선형 검색 무작위로 늘어놓은 데이터 모임에서 검색을 수행하는 방법이다. 요소가 직선 모양으로 늘어선 배열에서 원하는 키 값을 갖는 요소를 만날 때까지 맨 앞부터 순서대로 요소를 검색한다. 키 값이 '1' 이라면 세번째 시도에서 성공하고, 키 값이 '4' 라면 검색에 실패한다. 선형 검색 종료 조건 다음 조건 중 하나라도 성립하면 검색을 ..

큐(queue)-큐의 개념,특징,링버퍼

목차 큐(queue) 스택과 마찬가지로 데이터를 일시적으로 쌓아 놓는 자료구조이며 순서를 기억하고, 가장 먼저 넣은 데이터를 가장 먼저 꺼내는 자료구조를 큐(queue)라고 한다. 큐의 특징 큐는 아래와 같이 데이터를 저장하고 사용한다. 가장 먼저 넣은 데이터를 가장 먼저 꺼내는 선입선출(FIFO, First In First Out) 형태이다. 한쪽 끝에서 자료의 삽입이 이루어지고, 다른쪽 끝에서 자료의 삭제가 이루어진다. 그림으로 표현하면 이러한 형태이다. 큐에 맨 뒤에 데이터를 넣는 작업을 인큐(enqueue) 라고 한다. 큐에서 맨 앞의 데이터를 꺼내는 작업을 디큐(equeue) 라고 한다. 데이터를 꺼내는 쪽을 front 라고 한다. 데이터를 넣는 쪽을 rear 라고 한다. 큐 만들기 일반 큐 에..

스택(stack)-스택이란,개념,특징,구현

목차 스택(stack) 데이터를 순서대로 저장하지만 사용할때는 가장 나중에 넣은 데이터를 먼저 꺼내도록 하는 자료구조를 스택(stack)이라고 한다. 스택의 특징 스택은 아래와 같이 데이터를 저장하고 사용한다. 가장 나중에 넣은 데이터가 가장 먼저 나가게 되는 후입선출(LIFO, Last In First Out) 형태이다. top에서 자료의 삽입과 자료의 삭제가 이루어진다. 중간 데이터를 삭제할 수 없다. 그림으로 표현하면 이러한 형태이다. 스택에 데이터를 삽입하는 작업을 푸시(push)라고 하고, 스택에서 데이터를 꺼내는 작업을 팝(pop)이라고 한다. 푸시와 팝을 하는 위치를 꼭대기(top) 이라고 하고, 스택의 가장 아래부분을 바닥(bottom)이라고 한다. 스택 만들기 스택 본체 데이터를 저장하는..

자료구조의 개념

자료구조의 개념 자료구조의 의미 여러 데이터들의 묶음을 저장하고, 사용하는 방법을 정의한 것이다. 쉽게 말해 데이터를 어떻게 저장하고 어떻게 꺼내올 것인지 정의한 것. 자료구조는 왜 배워야 하는가? 데이터를 효율적으로 이용하기 위해 자료구조를 사용한다. 알고리즘이 단순해질 수 있는 방법 중 하나가 자료구조를 잘 만드는 것이다. 알고리즘과 무슨 관계가 있는가? 자료구조를 잘 만들면 알고리즘을 단순하게 만들 수 있다. 알고리즘을 아무리 잘 짜더라도 자료구조가 좋지 못하면 좋은 코드가 나오지 않는다. 1. 자료와 정보 사이의 관계 자료(data) : 현실 세계에서 관찰이나 측정을 통해 수집된 값(value) 나 사실(fact) 이다. 정보(information) : 어떤 상황에 대해서 의사결정을 할 수 있게 ..