顯示具有 Technology 標籤的文章。 顯示所有文章
顯示具有 Technology 標籤的文章。 顯示所有文章

2016年10月2日 星期日

[Firebase] Git for Firebase

FirebaseUI-iOS
FirebaseUI-Android

Database
Auth
Facebook
Google

2015年3月4日 星期三

2012年6月7日 星期四

[Technology] 3G-4G 理論速度


Downstream Upstream
3G WCDMA 384kbps 384kbps 中華電信, 台灣大, 遠傳, 威寶
CDMA2000 3.1Mbps 1.8Mbps 亞太
3.5G HSDPA 14.4Mbps 384kbps
3.75G HSUPA 14.4Mbps 5.76Mbps
---- HSPA+ 21.6Mbps 5.76Mbps
3.9G HSDPA+ 42Mbps 5.76Mbps 威寶
4G LTE 326.4Mbps 86.4Mbps

2011年12月2日 星期五

[Network] MAC address

http://packetsdropped.wordpress.com/2011/01/13/mac-address-universally-or-locally-administered-bit-and-individualgroup-bit/
LAA: Locally Administered Address. You can use this for your private network.
UAA: Universally Administered Address.

Individual Address bit: Unicast address
Group Address bit: Multicast/Broadcast address

mac address: xY:xx:xx:xx:xx:xx
Y: 00[L/U][I/G]
[L/U]: 1: UAA, 0: LAA
[I/G]: 1: multicast/broadcast, 0: unicast

OUI: http://standards.ieee.org/develop/regauth/oui/oui.txt

2011年10月11日 星期二

[Protocol] L2TP

L2TP tunnel protocol
http://en.wikipedia.org/wiki/Layer_2_Tunneling_Protocol

MTU tuning for L2TP
http://www.cisco.com/en/US/tech/tk801/tk703/technologies_tech_note09186a0080094c4f.shtml

IP header
http://www.freesoft.org/CIE/Course/Section3/7.htm

TCP header
http://www.freesoft.org/CIE/Course/Section4/8.htm

UDP header
http://www.networksorcery.com/enp/protocol/udp.htm


L2TP header
http://www.networksorcery.com/enp/protocol/l2tp.htm

L2TP images
http://images.yourdictionary.com/l2-tp

MTU/MSS sizes
http://www.cherrot.com/2011/09/pptp-l2tp-over-pppoe-mtu-mru.html

Ethernet MinSize = 512bit = 64 Byte
Ethernet MaxSize = 1518 Byte
so Ethernet IP MTU = 1518 - 18 ( 6 SRCMAC+ 6 DSTMAC+ 2 TYPE+ 4 CRC) = 1500 B
so Ethernet IP TCP MSS = 1500 - 40 ( 20 IP_HEADER + 20 TCP_HEADER) = 1460 B
so Ethernet IP UDP MTU/MRU = 1500 - 28 ( 20 IP_HEADER + 8 UDP_HEADER ) = 1472 B
so PPPoE MTU/MRU = 1500 - 8 ( 6 PPPoE_SESSION + 2 PPP_HEADER ) = 1492 B
so TCP over PPPoE MSS = 1492 ( PPPoE MTU/MRU ) - 40 ( 20 IP_HEADER + 20 TCP_HEADER) = 1452
so PPTP MTU/MRU = 1500 - 56 ( 20 IP_HEADER + 20 TCP_HEADER + 12 GRE_HEADER + 4 PPP_HEADER ) = 1444 B
so TCP over PPTP MSS = 1444 ( PPTP MTU/MRU ) - 40 ( 20 IP_HEADER + 20 TCP_HEADER) = 1404
so L2TP MTU/MRU = 1500 - 40 ( 20 IP_HEADER +8 UDP_HEADER + 8 L2TP_HEADER + 4 PPP_HEADER ) = 1460 B
so TCP over L2TP MSS = 1460 ( L2TP MTU/MRU ) - 40 ( 20 IP_HEADER + 20 TCP_HEADER) = 1420 B
so PPTP over PPPoE MTU/MRU = 1492 ( PPPoE MTU/MRU ) - 56 ( 20 IP_HEADER + 20 TCP_HEADER + 12 GRE_HEADER + 4 PPP_HEADER ) = 1436 B
so PPTP over PPTP MTU/MRU = 1444 ( PPTP MTU/MRU ) - 56 ( 20 IP_HEADER + 20 TCP_HEADER + 12 GRE_HEADER + 4 PPP_HEADER ) = 1388 B
so PPTP over L2TP MTU/MRU = 1460 ( L2TP MTU/MRU ) - 56 ( 20 IP_HEADER + 20 TCP_HEADER + 12 GRE_HEADER + 4 PPP_HEADER ) = 1404 B
so L2TP over PPPoE MTU/MRU = 1492 ( PPPoE MTU/MRU ) - 40 ( 20 IP_HEADER +8 UDP_HEADER + 8 L2TP_HEADER + 4 PPP_HEADER ) = 1452 B
so L2TP over PPTP MTU/MRU = 1444 ( PPTP MTU/MRU ) - 40 ( 20 IP_HEADER +8 UDP_HEADER + 8 L2TP_HEADER + 4 PPP_HEADER ) = 1404 B
so L2TP over L2TP MTU/MRU = 1460 ( L2TP MTU/MRU ) - 40 ( 20 IP_HEADER +8 UDP_HEADER + 8 L2TP_HEADER + 4 PPP_HEADER ) = 1420 B
Adjusting IP MTU, TCP MSS, and PMTUD
http://www.cisco.com/en/US/tech/tk870/tk877/tk880/technologies_tech_note09186a008011a218.shtml
MTU
http://en.wikipedia.org/wiki/Maximum_transmission_unit
MSS
http://www.tcpipguide.com/free/t_TCPMaximumSegmentSizeMSSandRelationshiptoIPDatagra-3.htm

2011年8月30日 星期二

Intel WiDi

Intel WiDi: 利用無線技術將 NB 的螢幕投射到顯示的裝置上,如電視、投影機、電腦螢幕等。NB 除了無線連結 WiDi 顯示器,亦可”同時”連線其它的無線網路上網。
要使用 Intel WiDi,需要特定的 Intel WiFi 網卡與 WiDi 裝置。

http://www.iqmore.idv.tw/intel-widi-intel-wireless-display-experience
http://scl13.com/intel-wireless-display-widi/
http://www.techbang.com.tw/posts/6109-asus-u41sv-intel-widi-create-home-video-center-with-wireless

2011年7月13日 星期三

[Android] MIPS on Android - Application

1. Getting Started with Android

2. Android on MIPS Source Code

3. Build MIPS platform
$ export TARGET_PRODUCT=generic
$ export TARGET_ARCH=mips
$ export TARGET_ARCH_VARIANT=mips32-fp
$ source build/envsetup.sh
$ make -j4

2011年7月1日 星期五

[Linux] callback function

Callback function
The program did "call" the function is initiative, but "callback" function is passive. For example, interrupt handler or event handler was called in some specific situations, they were "callback" functions.
The implementation for callback function is typically a function point in C.

The use of function point is like an abstraction layer. Every driver has to implement the same functions, just like r8169.c ethernet driver must implement the functions related to the pci_driver struct needed.


static struct pci_driver rtl8169_pci_driver = {
        .name           = MODULENAME,
        .id_table       = rtl8169_pci_tbl,
        .probe          = rtl8169_init_one,
        .remove         = __devexit_p(rtl8169_remove_one),
#ifdef CONFIG_PM
        .suspend        = rtl8169_suspend,
        .resume         = rtl8169_resume,
        .shutdown       = rtl_shutdown,
#endif
};