위 사진은 802.11의 프레임 포맷이다.오류 제어를 위한 CRC 부분이 있고 Data는 2312 바이트까지 전송이 가능하다.근데 앞서 말했듯이 PHY포맷의 헤더 부분은 고정된 최저 속도로만 전송이 가능하며 payload부분의 속도를 모듈레이션 선택에 따라 조절할수 있다고 했다. 헤더보다 데이터 전송 속도가 10배정도 빠르게 되면 헤더가 전체 데이터 전송에 80%를 차지할만큼 오버헤드가 엄청 커질수 있다.따라서 프레임을 쪼개는 fragmentation을 하는것보다 오히려 프레임을 합쳐서 헤더가 차지하는 비율을 적게 만드는게 좋다.이것을 aggregation이라고 한다. 프레임 포맷에는 주소 필드가 4개나 존재한다. AP는 무선 신호를 받아서 유선신호로 바꾼다음 라우터로 보내서 외부 인터넷망과 연결될수 있..
지난 포스팅 정리 미디움이 프리가 될때 프레임의 종류마다 따라야 하는 대기시간이 존재한다 이것을 interframe spacing이라고 한다.이것을 통해서 패킷간 우선순위를 해결할수 있고, 802.11의 3가지 프로토콜 공존문제를 해결할수 있었다. 또한 컨텐션 윈도우를 통해 노드간 충돌을 방지한다. 컨텐션 윈도우는 환경적응적으로 동작해야 하기 때문에 가변적이어야 한다. p-persistence csma/ca에서는 p를 결정할때 노드의 숫자인 N에 따라서 결정했었다. (N*P ACK가 오지 않았다. p-persistency csma/ca방식에서는 충돌이 일어나면 그냥 무시했었다. 미디움을 센싱 했는데 free상태라고 하면 DIFS만큼 기다렸다가 데이터를 전송한다.센싱했는데 미디움이 BUSY인경우 DIFS만..
802.11표준을 따른 기술 WIFI802.15 - Personal wireless(Blue Tooth)802.16 - Wireless distribution networks - WMAN (WiBro) AP와 공유기는 약간 다른 개념이다 AP는 ip기능을 필요로 하지 않는다.ap끼리는 유선으로 연결되어 있다. ap는 많이 존재할수 있다. portal이라는 특별한 기계에도(인터넷과 연결해주는 역할을 하는 기계) 연결되어 있다. 유선은 이더넷으로 연결되어 있다. 원래 802.11은 인터넷 접속 용도로 고안된건 아니나 요즘에는 대부분 인터넷 접속용으로 사용된다.AP끼리의 또는 AP와 포탈과의 유선망을 Distribution system이라고 한다. AP로 연결되어있는 기기들끼리는 서로 모두 통신이 가능하다.하..
센서들 끼리 ad hoc network를 구성하는것 처럼 보인다. 센서 네트워크의 목적에 맞게 mac protocol을 설계 해야 한다. 센서 네트워크는 환경 적응적이어야 하고, 노드의수가 많아도 동작해야 하며, 사람이 들여다 보지 않아도 동작해야한다.또한 센서의 위치 변경이나 밀도 변경에도 적응적이어야 한다. 기존 네트워크에서 제일 중요했던 Fairness문제(특정 노드만 데이터를 수신)가 센서 네트워크에서는 중요하지 않다.(노드들이 범용 목적이 아닌 특정 목적을 위해 존재하기 때문) 네트워크 내에서 처리하려면 패킷단위가 아니라 메세지(의미있는 데이터의 집합 ex파일) 단위 latency가 중요하다. Fairness와 latency는 센서 네트워크에서 크게 상관없다.에너지 효율, 충돌 피하기, 확장성,..
ER다이어 그램을 설계하고 스키마를 정제하고 뷰를 정의한 뒤에, 디비 튜닝 까지 완료 해주어야 한다. SQL질의를 던졌는데 버벅거리면서 제대로된 성능이 나오지 않을때 자동차를 튜닝하는것처럼 디비를 튜닝 해주어야 한다. DB tuning 1. index 적절하게 사용 -> 질의가 들어 왔을때 디스크에 존재하는 데이터를 가장 빠르게 찾아주는것 (B+TREE,Hash)2.SQL Rewriting -> 중첩쿼리(Nested QUERY) 제거 -> 중첩 쿼리 대신 조인 사용, Grouping 최소화3.정규화 / 역정규화 -> 정규화를 많이 할수록 데이터 중복성은 제거되지만 퍼포먼스는 떨어짐. 우리는 디비 튜닝할때 정규화/ 역정규화에 대해서 자세히 살펴볼것이다. 회사에 중요하고 자주사용하는 질의가 무엇인지 분석하는..
주어진 함수 종속성 집합 F로부터 후보키를 찾아내는 방법을 알아보자. R(A,B,C,D,E,F)가 있다. F= {A->C , C->D, D->B , E->F}일때 이 테이블의 후보키는 무엇일까? 후보키라는 것은 최소성과 유일성을 만족하는 속성이다. 다시말해서 하나의 속성이 다른 모든 속성을 결정하면 그것이 후보키이다.물론 암스트롱 공리를 이용해서 F로부터 모든 F+를 구해서 후보키를 알아낼수도 있겠지만 경우의수가 매우 많고, 실수할 확률도 높아지게 된다. 그렇기 때문에 Attribute Closure(속성 폐포)를 이용해서 테이블의 후보키를 구해야 한다. 위의 F에서 오른쪽에 있는 속성을 제외한 나머지 속성들이 후보키가 될 자격이 있는 키들이다. 왜냐하면 후보키는 결정되는게 아니라 결정하는 결정자이기 때..
10번줄 Fcntl(file control) 시스템콜F_GETFL(GET Flag) : 그 소켓에 대해 이전에 플래그가 설정되어 있으면 그것을 얻어와라 라는의미 11번줄 O_NONBLOCK(Option nonblock)즉 기존에 있던 flag를 int형 숫자로 리턴하게끔해서 거기에 nonblock옵션을 새로 추가하게 하기 위한 줄이다. stdineof는 키보드로부터 Ctrl+D가 눌렸는지에 대한 플래그이다. 우리 케이스에선 10,12,14번줄 필요하지 않다. 통상적으로 복잡한 프로그램에 쓰기 때문에 썼음.파일을 nonblock하게끔 설정하는것이 file control == Fcntl시스템콜이다. select 했을때 nonblock 된다. readable 또는 writable한 일이 없는 경우 블럭 되지 ..
- Total
- Today
- Yesterday
- return type
- javascript
- hydrate
- reactdom
- Action
- webpack
- Next.js
- reflow
- reducer
- react
- rendering scope
- computed
- es6
- props
- atomic design
- await
- design system
- useRef
- mobx
- storybook
- state
- async
- Polyfill
- typescript
- useEffect
- type alias
- Babel
- promise
- server side rendering
- react hooks
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |