小胞輸送のプロセスは、主にエンドサイトーシスとエキソサイトーシスに分けられ、前者が細胞外物質の取り込み、後者が細胞内物質の放出に関わっている。どちらの場合でも、輸送対象の物質を小胞内に取り込むためのプロセスがあり、輸送される物質はタンパク質などに囲まれて被膜小胞を形成する。エンドサイトーシスの際には、クラスリンやアダプチンといったタンパク質が、エンドソーム（小胞の一種）を形成する骨格としてはたらいている。クラスリンで覆われた小胞のことは、クラスリン被膜小胞という。また、小胞が別の器官と融合する小胞融合のプロセスなどで、小胞内の物質を認識するためのマーカーであるSNAREタンパク質が重要な役割を担っていることが知られている。
分泌小胞は、細胞内の物質を細胞外に放出するのに用いられる小胞である。細胞が物質を細胞外に放出する理由は大きく分けて二つあり、老廃物の排出と、化学物質の放出によるシグナル伝達である。後者の例としては、軸索末端から放出されるシナプス小胞や、内分泌器（すい臓のランゲルハンス島など）から放出されるホルモンの分泌、細胞壁を構成する酵素の分泌などが挙げられる。
輸送小胞は、細胞内における物質の移動に用いられる小胞である。例えば粗面小胞体からゴルジ体へタンパク質輸送を行うのに、輸送小胞が用いられる。シグナルペプチドタンパク質が翻訳されると、翻訳をおこなっているリボソームが粗面小胞体に結合し、生成されたタンパク質が膜に取り込まれ、輸送小胞として分泌される。輸送小胞で輸送されるタンパク質は、リソソームやペルオキシソーム、または細胞外などに輸送される前に、一旦ゴルジ体で修飾を受けることが多い。
リソソームは、細胞内消化に用いられる消化酵素を含む小胞である。 一旦細胞外からエンドサイトーシスによって物質を取り込むと、食胞を形成する。この食胞がリソソームと膜融合することで、細胞外から取り込んだ物質を分解することができる。このプロセスはファゴサイトーシス（食作用）という。 またリソソームは、損傷を受けた細胞小器官などを破壊するのにも用いられる。損害を受けた細胞小器官の膜とリソソームが融合して働きかけることで、細胞小器官を分解している。
液胞は主に植物細胞で発達している小胞で、内部はほとんど水で満たされている。 植物細胞では、浸透圧の制御や栄養物質の貯蔵のために、大きな液胞を持つことで知られている。菌類では、液胞は食作用やエンドサイトーシスなどに用いられる。エンドサイトーシスにおける液胞は、エンドソームと呼ばれることもある。また液胞に似た構造として、原生生物の一部がもつ収縮胞が挙げられる。収縮胞は細胞質基質が低張になるのを防ぐために、細胞質から水を取り込み、細胞外に排出している。
小胞の機能としては、細胞での合成産物の貯蓄、細胞外への物質輸送、物質の消化などが挙げられる。小胞の膜の構造は細胞膜のそれと類似しているため、小胞は細胞膜と融合して小胞内物質を細胞外に放出することができる。また小胞は、細胞中で他の細胞小器官の膜と融合することもできるため、細胞内の別の器官にも物質輸送を行うことができる。小胞は、少なくとも1層のリン脂質二重層によって細胞質基質と区切られている。リン脂質二重層が1層である小胞は単層小胞、リン脂質二重層が2層以上である小胞は多層小胞と呼ばれる。小胞の内部は細胞質基質と区切られているので、小胞内を細胞質基質と異なる環境にすることができる。そのため、小胞内を各種化学反応の場として利用し、様々な物質や酵素を合成することができる。
小胞（しょうほう）は、細胞内にある膜に包まれた袋状の構造で、細胞中に物質を貯蔵したり、細胞内外に物質を輸送するために用いられる。代表的なものに、液胞やリソソームがある。小胞は、脂質膜の化学的な特性上、自然に形成される構造である（ミセルを参照）。ほとんどの小胞は何かしらの特化した機能を持っており、その機能は小胞内に含まれる物質によって異なる。ただし見た目には同じ形状をしている場合もあり、小胞の内容を分析することなく見分けることが困難である場合も多い。
(1)表定義及びデータ 「ファンクションの例2（DB操作あり）」と同じ。(2)定義drop procedure if exists cng_gengou;   -- 存在したら削除delimiter //                          -- 終端記号の変更create procedure cng_gengou(in  p_seireki_date date, out p_rslt         varchar(30))---- 西暦→和暦--begin declare w_rcnt        int         default 0;    -- 行数チェック declare w_gengou_name varchar(4)  default '';   -- 元号名 declare w_bgn_date    date;                     -- 開始日 declare w_nensuu      tinyint     default 0;    -- 和暦年 declare eod           tinyint;-- カーソル宣言 declare cr1 cursor for  select gengou_name,bgn_date   from gengou   where bgn_date<=p_seireki_date and end_date>=p_seireki_date;-- 例外宣言 declare continue handler for not found set eod=1; set eod=0; open cr1; fetch cr1 into w_gengou_name,w_bgn_date; while eod=0 do  set w_rcnt=w_rcnt+1;  if w_rcnt>1 then   set p_rslt='2行以上存在するため、未サポート';  else   if length(w_gengou_name)>0 then    set w_nensuu=year(p_seireki_date)-year(w_bgn_date)+1;    set p_rslt=concat(w_gengou_name,cast(w_nensuu as char(2)));   else    set p_rslt='change unsuccessful';   end if;  end if;  fetch cr1 into w_gengou_name,w_bgn_date; end while; close cr1;end;//delimiter ;                       -- 終端記号を元に戻す(3)実行call cng_gengou('2006-08-10',@rslt);select @rslt;