본문 바로가기

과목

네트워크 모델 프로토콜 계층화 모듈화와 비슷하다. 각 계층을 독립적으로 다룰 수 있다. 통신 시스템의 어느 계층을 변경하든 그 영향이 전체 시스템에 미치지 않아서 확장성, 유연성이 생긴다. 통신 기능이 분할되므로 각 계층에 프로토콜을 쉽게 설치할 수 있다. 프로토콜에서 각 계층의 기능을 실현하는 실체를 엔티티라고 한다. 임의의 엔티티는 하위 엔티티에서 서비스를 받고 상위 엔티티에 서비스를 제공한다. 상위 계층과 하위 계층 사이에서 서비스를 주고 받을 때의 규약을 인터페이스라고 한다. 통신상 같은 계층에서 주고 받을 때의 규약을 프로토콜이라고 한다. OSI 7 Layer A의 응용계층에서 물리계층까지 데이터를 보내고 중간 노드에서 3계층을 거치게 된다. B의 물리계층에서 응용계층까지 데이터가 전달된다. 응용 계층 사용자..
인터넷 기초 지식 인터넷 : 여러 네트워크를 연결해서 하나의 네트워크로 만드는 것 초기 네트워크는 컴퓨터, 프린터같은 통신 장치를 연결해서 정보를 공유하기 위해 사용됐다. 네트워크 장비가 발달하면서 기관, 개인도 인터넷을 사용할 수 있게 됐다. 통신 네트워크의 시작은 1969년 ARPANET으로부터였다. 메인 컴퓨터들이 각각 독립적으로 실행되었던 1960년대에는 제조회사가 다른 컴퓨터끼리는 통신할 수 없었다. 1967년 미국방성의 ARPA는 각 부서의 정보를 공유하기 위해 컴퓨터를 서로 연결하는 ARPANET이라는 소형 네트워크를 제안했다. 1969년 ARPANET은 NCP라는 SW로 호스트들 간의 통신을 제공했고 UCLA, UCSB, SRI, Utah대학의 4개 노드를 연결해서 최초의 네트워크를 구성했다. 1972년 A..
파이썬 연결 리스트 singly linked list 1. 지정 노드의 왼쪽 또는 오른쪽에 삽입하는 것 구현 2. node 자체를 찾는 함수 3. node의 data를 찾는 함수 class Node: def __init__(self, data): self.data = data self.next = None class LinkedList: def __init__(self): self.head = None self.current = None def append(self, data): node = Node(data) if self.head is None: # 노드가 없는 경우 self.head = node self.current = node else: # 노드가 있는 경우 self.current = self.head while self.current.next: ..
OSI 7 Layer Open System Interconnection의 약자, 개방형 시스템끼리 어떻게 서로 동작하는지에 관한 것 하위 3계층 1. 물리계층 노드(호스트)를 전송매체와 연결하기 위한 인터페이스 규칙, 전송매체의 특성을 다룸 물리, 전기, 기계적 약속 예: 동축케이블 규격, 신호의 전압 2. 데이터 링크 계층 물리적 전송 오류 해결 오류 제어(직접 묶여있는 관계) 전송오류감지->재전송 3. 네트워크 계층 주소 개념 호스트 간에 올바른 전송 경로 선택(혼잡 제어 포함) -> 라우팅 라우터(Router) 호스트의 주소를 가지고 어떤 경로를 통해 데이터를 전송 상위 4계층 4. 전송계층 송수신 프로세스 사이(end to end) 연결 기능 지원 안전한 데이터 전송(양 끝단의 관계) 오류제어, 흐름제어 5. 세션계층..
쿠키와 세션 그리고 OAuth 쿠키와 세션을 왜 사용할까? 서버와 클라이언트가 통신을 할 때마다 서버는 클라이언트가 누구인지 알아야 한다. HTTP는 connectionless, stateless라는 특성이 있다. connectionless는 말 그대로 비연결성인데 클라이언트 요청 후 서버가 응답을 하면 연결이 끊어진다. 자기 할 일이 끝나면 뒤도 안돌아본다. stateless는 비상태성이다. 상태 정보를 저장하지 않는다. 로그인되어 있는 사이트를 껐다가 켜면 다시 로그인을 해야 하는 경우가 예시다. 이런 특성들에 의해서 사용자는 매번 서버에 자신이 누군지 알려야하는 불편을 겪는다. 보완하기 위해 쿠키와 세션을 사용한다. 쿠키와 세션의 공통점은 요청하는 클라이언트가 누군지 인증할 때, 즉 서버라는 놈이 요청한 클라이언트가 누군지 확인..
PostgreSQL 발음 pronounce https://www.postgresql.org/community/survey/33-how-do-you-pronounce-postgresql/ PostgreSQL: Survey Results: How do you pronounce 'PostgreSQL'? www.postgresql.org 발음 듣기 불러오는 중입니다... 1위 발음 post-gres-q-l ajax를 에이잭스라고 읽듯이 PostgreSQL은 포스트그레스 큐 엘 이라고 읽는다.
SQL Query online test site RDBMS 켜서 일일이 스키마 짜고 DB 만들고 테이블 만들고 하기 좀 번거로운 경우, 아래 사이트에 들어가서 미리 작성 된 테이블에 쿼리를 작성해 테스트해 볼 수 있다. https://sqltest.net/ 오라클, mysql 사용 가능 http://sqlfiddle.com/ 오라클, mysql, postgresql, sqlite, mssql 사용가능 https://sqlzoo.net/wiki/SQL_Tutorial 튜토리얼이 있음. 퀴즈를 풀면서 실제로 sql 쿼리 작성하고 결과 볼 수 있다. https://www.testdome.com/tests Database Technologies 카테고리에 가면 테스트 해볼 수 있다. 많은 기업과 개인 시험 응시자들이 사용한다고 한다. 아마 자신의 실력을 검증..
View에서 CRUD가 되나? 되는 경우가 있고 안되는 경우가 있다!! 면접관에게 View의 특징을 설명하다가 CRUD 된다고 했는데... 안된다는 답변을 받았다. 그래서 찾아보니 되는 경우가 있고 안되는 경우가 있다. 면접관분께서는 아마 데이터베이스 상에 저장되지 않는 정보니까 CRUD가 안된다고 생각하셨나보다. select 해서 read는 되는 건데... 아니라고 해서 그냥 아 제가 잘못 알고 있었습니다. 라고 수긍해버렸다. http://www.mssql.org/LectureSQL/02_sql2k/view_05.htm